You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2007/10/05 03:25:11 UTC
svn commit: r582051 - in /maven/plugins/trunk/maven-eclipse-plugin/src:
main/java/org/apache/maven/plugin/eclipse/writers/rad/
test/java/org/apache/maven/plugin/eclipse/
test/resources/projects/project-rad-5/
test/resources/projects/project-rad-5/proje...
Author: brianf
Date: Thu Oct 4 18:25:10 2007
New Revision: 582051
URL: http://svn.apache.org/viewvc?rev=582051&view=rev
Log:
merging patch for MECLIPSE-242
Added:
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/
- copied from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/pom.xml
- copied unchanged from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/pom.xml
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/src/
- copied from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/src/
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/src/main/
- copied from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/src/main/
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/src/main/resources/
- copied from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/src/main/resources/
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-4/src/main/resources/DummyResource.txt
- copied unchanged from r580176, maven/plugins/branches/MECLIPSE-242/src/test/resources/projects/project-rad-5/project-rad-4/src/main/resources/DummyResource.txt
Modified:
maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/rad/RadWebSettingsWriter.java
maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/RadPluginTest.java
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/pom.xml
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/pom.xml
maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/websettings
Modified: maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/rad/RadWebSettingsWriter.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/rad/RadWebSettingsWriter.java?rev=582051&r1=582050&r2=582051&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/rad/RadWebSettingsWriter.java (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/rad/RadWebSettingsWriter.java Thu Oct 4 18:25:10 2007
@@ -26,6 +26,8 @@
import org.apache.maven.plugin.eclipse.Constants;
import org.apache.maven.plugin.eclipse.Messages;
import org.apache.maven.plugin.eclipse.writers.AbstractEclipseWriter;
+import org.apache.maven.plugin.ide.IdeDependency;
+import org.apache.maven.plugin.ide.IdeUtils;
import org.apache.maven.plugin.ide.JeeUtils;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.xml.PrettyPrintXMLWriter;
@@ -36,7 +38,8 @@
*
* @author <a href="mailto:nir@cfc.at">Richard van Nieuwenhoven </a>
*/
-public class RadWebSettingsWriter extends AbstractEclipseWriter
+public class RadWebSettingsWriter
+ extends AbstractEclipseWriter
{
private static final String COM_IBM_ETOOLS_SITEEDIT_WIZARDS_PROJECTFEATURE_WEB_SITE_FEATURE =
@@ -64,6 +67,14 @@
private static final String WEBSETTINGS_WEBSETTINGS = "websettings";
+ private static final String WEBSETTINGS_LIBMODULES = "lib-modules";
+
+ private static final String WEBSETTINGS_LIBMODULE = "lib-module";
+
+ private static final String WEBSETTINGS_LM_JAR = "jar";
+
+ private static final String WEBSETTINGS_LM_PROJECT = "project";
+
/**
* the context root to use for this project
*/
@@ -72,8 +83,7 @@
/**
* required default constructor.
*
- * @param warContextRoot
- * the context root to use for this project
+ * @param warContextRoot the context root to use for this project
*/
public RadWebSettingsWriter( String warContextRoot )
{
@@ -83,10 +93,10 @@
/**
* write the websettings file for RAD6 if needed.
*
- * @throws MojoExecutionException
- * when writing the config files was not possible
+ * @throws MojoExecutionException when writing the config files was not possible
*/
- public void write() throws MojoExecutionException
+ public void write()
+ throws MojoExecutionException
{
FileWriter w;
if ( Constants.PROJECT_PACKAGING_WAR.equalsIgnoreCase( config.getProject().getPackaging() ) )
@@ -109,8 +119,7 @@
/**
* write the websettings file for RAD6.
*
- * @param writer
- * where to write to
+ * @param writer where to write to
*/
private void writeModuleTypeFacetCore( XMLWriter writer )
{
@@ -140,14 +149,51 @@
writer.endElement();
writer.endElement();
writer.endElement();
- writer.endElement();
+
+ // library modules
+ writer.startElement( WEBSETTINGS_LIBMODULES );
+
+ // iterate relevant dependencies (non-test, non-provided, project)
+ IdeDependency[] deps = config.getDeps();
+ if ( deps != null )
+ {
+ for ( int i = 0; i < deps.length; i++ )
+ {
+ final IdeDependency dependency = deps[i];
+ log.debug( "RadWebSettingsWriter: checking dependency " + dependency.toString() );
+
+ if ( dependency.isReferencedProject() && !dependency.isTestDependency() && !dependency.isProvided() )
+ {
+ log.debug( "RadWebSettingsWriter: dependency " + dependency.toString()
+ + " selected for inclusion as lib-module" );
+
+ String depName = IdeUtils.getProjectName( config.getProjectNameTemplate(), dependency );
+ String depJar = dependency.getArtifactId() + ".jar";
+
+ writer.startElement( WEBSETTINGS_LIBMODULE );
+
+ writer.startElement( WEBSETTINGS_LM_JAR );
+ writer.writeText( depJar );
+ writer.endElement(); // jar
+
+ writer.startElement( WEBSETTINGS_LM_PROJECT );
+ writer.writeText( depName );
+ writer.endElement(); // project
+
+ writer.endElement(); // libmodule
+ }
+ }
+ }
+
+ writer.endElement(); // libmodules
+ writer.endElement(); // websettings
+
}
/**
* Create the ContextRoot for this project, the default is the artifact id
*
- * @param warContextRoot
- * set as a configuration property.
+ * @param warContextRoot set as a configuration property.
* @return the context root to use
*/
private String getContextRoot( String warContextRoot )
Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/RadPluginTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/RadPluginTest.java?rev=582051&r1=582050&r2=582051&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/RadPluginTest.java (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/RadPluginTest.java Thu Oct 4 18:25:10 2007
@@ -50,8 +50,8 @@
{
testProject( "project-rad-2", new Properties(), "rad-clean", "rad" );
File generatedManifest = getTestFile( PROJECTS_BASEDIR + "/project-rad-2/src/main/webapp/META-INF/MANIFEST.MF" );
- File expectedManifest = getTestFile( PROJECTS_BASEDIR
- + "/project-rad-2/src/main/webapp/META-INF/expected_MANIFEST.MF" );
+ File expectedManifest =
+ getTestFile( PROJECTS_BASEDIR + "/project-rad-2/src/main/webapp/META-INF/expected_MANIFEST.MF" );
assertFileEquals( localRepositoryDirectory.getCanonicalPath(), expectedManifest, generatedManifest );
}
@@ -61,8 +61,8 @@
{
testProject( "project-rad-3", new Properties(), "rad-clean", "rad" );
File generatedManifest = getTestFile( PROJECTS_BASEDIR + "/project-rad-3/ejbModule/META-INF/MANIFEST.MF" );
- File expectedManifest = getTestFile( PROJECTS_BASEDIR
- + "/project-rad-3/ejbModule/META-INF/expected_MANIFEST.MF" );
+ File expectedManifest =
+ getTestFile( PROJECTS_BASEDIR + "/project-rad-3/ejbModule/META-INF/expected_MANIFEST.MF" );
assertFileEquals( localRepositoryDirectory.getCanonicalPath(), expectedManifest, generatedManifest );
}
@@ -110,28 +110,28 @@
executeMaven( pom0, props, goals );
- // this.maven.execute( Arrays.asList( new MavenProject[] { project, project2, project3 } ), Arrays
- // .asList( new String[] {
- // "install",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
- // new Properties(), basedir );
- // this.maven.execute( Arrays.asList( new MavenProject[] { project1, project2, project3 } ), Arrays
- // .asList( new String[] {
- // "install",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
- // new Properties(), basedir );
+ // this.maven.execute( Arrays.asList( new MavenProject[] { project, project2, project3 } ), Arrays
+ // .asList( new String[] {
+ // "install",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
+ // new Properties(), basedir );
+ // this.maven.execute( Arrays.asList( new MavenProject[] { project1, project2, project3 } ), Arrays
+ // .asList( new String[] {
+ // "install",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
+ // new Properties(), basedir );
// jar muss reincoliert sein
assertTrue( "Expected file not found: project-rad-1/maven-core-98.0.jar",
new File( basedir, "project-rad-1/maven-core-98.0.jar" ).exists() );
- Xpp3Dom applicationXml = Xpp3DomBuilder
- .build( new FileReader( new File( basedir, "project-rad-1/META-INF/application.xml" ) ) );
+ Xpp3Dom applicationXml =
+ Xpp3DomBuilder.build( new FileReader( new File( basedir, "project-rad-1/META-INF/application.xml" ) ) );
- Xpp3Dom modulesmapsXml = Xpp3DomBuilder
- .build( new FileReader( new File( basedir, "project-rad-1/META-INF/.modulemaps" ) ) );
+ Xpp3Dom modulesmapsXml =
+ Xpp3DomBuilder.build( new FileReader( new File( basedir, "project-rad-1/META-INF/.modulemaps" ) ) );
assertNotNull( modulesmapsXml );
@@ -147,6 +147,13 @@
assertEquals( "project-rad-5_2", webappModule.getChild( "web" ).getChild( "context-root" ).getValue() );
assertEquals( "project-rad-5_3.jar", ejbModule.getChild( "ejb" ).getValue() );
+ Xpp3Dom websettings =
+ Xpp3DomBuilder.build( new FileReader( new File( basedir, "project-rad-2/.websettings" ) ) );
+
+ assertEquals( "project-rad-5_4.jar",
+ websettings.getChild( "lib-modules" ).getChild( "lib-module" ).getChild( "jar" ).getValue() );
+ assertEquals( "project-rad-5_4",
+ websettings.getChild( "lib-modules" ).getChild( "lib-module" ).getChild( "project" ).getValue() );
}
public void testProject5_2()
@@ -185,19 +192,19 @@
executeMaven( pom0, props, goals );
- // this.maven.execute( Arrays.asList( new MavenProject[] { project, project2, project3 } ), Arrays
- // .asList( new String[] {
- // "install",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
- // new Properties(), basedir );
+ // this.maven.execute( Arrays.asList( new MavenProject[] { project, project2, project3 } ), Arrays
+ // .asList( new String[] {
+ // "install",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
+ // new Properties(), basedir );
//
- // this.maven.execute( Arrays.asList( new MavenProject[] { project1, project2, project3 } ), Arrays
- // .asList( new String[] {
- // "install",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
- // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
- // new Properties(), basedir );
+ // this.maven.execute( Arrays.asList( new MavenProject[] { project1, project2, project3 } ), Arrays
+ // .asList( new String[] {
+ // "install",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad-clean",
+ // "org.apache.maven.plugins:maven-eclipse-plugin:current:rad" } ), eventMonitor, new ConsoleDownloadMonitor(),
+ // new Properties(), basedir );
assertTrue( "Expected file not found: project-rad-1/maven-core-98.0.jar",
new File( basedir, "project-rad-1/maven-core-98.0.jar" ).exists() );
Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/pom.xml?rev=582051&r1=582050&r2=582051&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/pom.xml (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/pom.xml Thu Oct 4 18:25:10 2007
@@ -10,6 +10,7 @@
<module>project-rad-1</module>
<module>project-rad-2</module>
<module>project-rad-3</module>
+ <module>project-rad-4</module>
</modules>
<build>
<plugins>
@@ -47,4 +48,4 @@
</plugin>
</plugins>
</build>
-</project>
\ No newline at end of file
+</project>
Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/pom.xml?rev=582051&r1=582050&r2=582051&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/pom.xml (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/pom.xml Thu Oct 4 18:25:10 2007
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -17,6 +16,11 @@
<groupId>maven</groupId>
<artifactId>maven-core</artifactId>
<version>98.0</version>
+ </dependency>
+ <dependency>
+ <groupId>eclipse.test</groupId>
+ <artifactId>project-rad-5_4</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/websettings
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/websettings?rev=582051&r1=582050&r2=582051&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/websettings (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-rad-5/project-rad-2/websettings Thu Oct 4 18:25:10 2007
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<websettings version="600">
<webcontent>src/main/webapp</webcontent>
- <context-root>maven-eclipse-plugin-test-project-rad-2</context-root>
+ <context-root>project-rad-5_2</context-root>
<project-type>J2EE</project-type>
- <jsp-level>1.3</jsp-level>
+ <jsp-level>2.0</jsp-level>
<features>
<feature>
<feature-id>templatefeature</feature-id>
@@ -12,4 +12,10 @@
<feature-id>com.ibm.etools.siteedit.wizards.projectfeature.WebSiteFeature</feature-id>
</feature>
</features>
-</websettings>
\ No newline at end of file
+ <lib-modules>
+ <lib-module>
+ <jar>project-rad-5_4.jar</jar>
+ <project>project-rad-5_4</project>
+ </lib-module>
+ </lib-modules>
+</websettings>