Author: kenney
Date: Thu Aug 25 14:28:30 2005
New Revision: 240143

URL: http://svn.apache.org/viewcvs?rev=240143&view=rev
Log:
o Fix MNG-410 (and MNG-769, MNG-738). Added testcase project-3 to demonstrate 
this.

o Added testcase to check generation of eclipse files in
  different location; modified the testcase to support this,
  and deal with the absolute paths.

o Neatified the addSourceLinks/addResourceLinks: using
  a map to keep track of duplicate source folders has the side
  effect of only needing one of those methods; it should
  also be faster :)

o Tried to add support for includes/excludes, but eclipse only
  supports unique source directories; this is typically not the
  case in maven, filters are used to split one resourcedir
  up. Left the code in for future reference.
  TODO: find a way to merge includes/excludes. If only
  the dir where in/excludes are specified is unique, they
  could be written without problem. This requires a preprocessing
  pass.

Added:
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/classpath
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/resources/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/resources/dummy
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/resources/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/resources/dummy
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/classpath
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/resources/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/resources/dummy
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
   (with props)
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/resources/
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/resources/dummy
Modified:
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipseWriter.java
    
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java

Modified: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java?rev=240143&r1=240142&r2=240143&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
 Thu Aug 25 14:28:30 2005
@@ -86,6 +86,11 @@
         this.localRepository = localRepository;
     }
 
+    public void setOutputDir( File outputDir )
+    {
+        this.outputDir = outputDir;
+    }
+
     public void execute()
         throws MojoExecutionException
     {
@@ -105,7 +110,7 @@
         {
             outputDir = project.getFile().getParentFile();
         }
-        else
+        else if ( !outputDir.equals( project.getFile().getParentFile() ) )
         {
             if ( !outputDir.isDirectory() )
             {

Modified: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipseWriter.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipseWriter.java?rev=240143&r1=240142&r2=240143&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipseWriter.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipseWriter.java
 Thu Aug 25 14:28:30 2005
@@ -32,8 +32,8 @@
 import java.io.FileWriter;
 import java.io.IOException;
 import java.io.Writer;
-import java.util.ArrayList;
 import java.util.Collection;
+import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
@@ -70,12 +70,16 @@
         assertNotEmpty( project.getArtifactId(), "artifactId" );
 
         File projectBaseDir = project.getFile().getParentFile();
+        
+        Map eclipseSourceRoots = new HashMap();
 
-        Collection referencedProjects = writeEclipseClasspath( projectBaseDir, 
outputDir, project, executedProject, reactorProjects );
+        Collection referencedProjects = writeEclipseClasspath(
+               projectBaseDir, outputDir, project, executedProject, 
reactorProjects, eclipseSourceRoots
+        );
         
-        writeEclipseProject( projectBaseDir, outputDir, project, 
executedProject, referencedProjects );
+        writeEclipseProject( projectBaseDir, outputDir, project, 
executedProject, referencedProjects, eclipseSourceRoots );
 
-        writeEclipseSettings( projectBaseDir, outputDir, project, 
executedProject );
+        writeEclipseSettings( projectBaseDir, outputDir, project, 
executedProject);
 
         log.info( "Wrote Eclipse project for " + project.getArtifactId() + " 
to " + outputDir.getAbsolutePath() );
     }
@@ -144,7 +148,7 @@
     // .project
     // ----------------------------------------------------------------------
 
-    protected void writeEclipseProject( File projectBaseDir, File basedir, 
MavenProject project, MavenProject executedProject, Collection 
referencedProjects )
+    protected void writeEclipseProject( File projectBaseDir, File basedir, 
MavenProject project, MavenProject executedProject, Collection 
referencedProjects, Map eclipseSourceRoots )
         throws EclipsePluginException
     {
         FileWriter w;
@@ -232,14 +236,8 @@
             writer.startElement( "linkedResources" );
 
             addFileLink( writer, projectBaseDir, basedir, project.getFile() );
-
-            addSourceLinks( writer, projectBaseDir, basedir, 
executedProject.getCompileSourceRoots() );
-
-            addResourceLinks( writer, projectBaseDir, basedir, 
executedProject.getBuild().getResources() );
-
-            addSourceLinks( writer, projectBaseDir, basedir, 
executedProject.getTestCompileSourceRoots() );
-
-            addResourceLinks( writer, projectBaseDir, basedir, 
executedProject.getBuild().getTestResources() );
+            
+            addSourceLinks( writer, projectBaseDir, basedir, 
eclipseSourceRoots );
 
             writer.endElement(); // linkedResources
         }
@@ -253,7 +251,7 @@
     // .classpath
     // ----------------------------------------------------------------------
 
-    protected Collection writeEclipseClasspath( File projectBaseDir, File 
basedir, MavenProject project, MavenProject executedProject, List 
reactorProjects )
+    protected Collection writeEclipseClasspath( File projectBaseDir, File 
basedir, MavenProject project, MavenProject executedProject, List 
reactorProjects, Map eclipseSourceRoots )
         throws EclipsePluginException
     {
         FileWriter w;
@@ -277,11 +275,11 @@
 
         addSourceRoots( writer, projectBaseDir, basedir,
                         executedProject.getCompileSourceRoots(),
-                        null );
+                        null, eclipseSourceRoots );
 
         addResources( writer, projectBaseDir, basedir,
                       project.getBuild().getResources(),
-                      null );
+                      null, eclipseSourceRoots );
 
         // 
----------------------------------------------------------------------
         // The test sources and resources
@@ -289,11 +287,13 @@
 
         addSourceRoots( writer, projectBaseDir, basedir,
                         executedProject.getTestCompileSourceRoots(),
-                        project.getBuild().getTestOutputDirectory() );
+                        project.getBuild().getTestOutputDirectory(),
+                        eclipseSourceRoots );
 
         addResources( writer, projectBaseDir, basedir,
                       project.getBuild().getTestResources(),
-                      project.getBuild().getTestOutputDirectory() );
+                      project.getBuild().getTestOutputDirectory(),
+                      eclipseSourceRoots );
 
         // 
----------------------------------------------------------------------
         // The default output
@@ -349,7 +349,7 @@
     //
     // ----------------------------------------------------------------------
 
-    private void addSourceRoots( XMLWriter writer, File projectBaseDir, File 
basedir, List sourceRoots, String output )
+    private void addSourceRoots( XMLWriter writer, File projectBaseDir, File 
basedir, List sourceRoots, String output, Map addedSourceRoots )
     {
         for ( Iterator it = sourceRoots.iterator(); it.hasNext(); )
         {
@@ -357,17 +357,27 @@
 
             if ( new File( sourceRoot ).isDirectory() )
             {
+                // Don't add the same sourceroots twice. No include/exclude
+               // patterns possible in maven for (test|script|)source 
directories.
+                if ( addedSourceRoots.containsKey( sourceRoot ) )
+                {
+                       continue; 
+                }
+
                 writer.startElement( "classpathentry" );
 
                 writer.addAttribute( "kind", "src" );
 
-                sourceRoot = toRelative( projectBaseDir, sourceRoot );
+                String eclipseSourceRoot = toRelative( projectBaseDir, 
sourceRoot );
+                
                 if (!projectBaseDir.equals(basedir))
                 {
-                    sourceRoot = sourceRoot.replaceAll( "/", "-" );
+                    eclipseSourceRoot = eclipseSourceRoot.replaceAll( "/", "-" 
);
                 }
                 
-                writer.addAttribute( "path", sourceRoot );
+                addedSourceRoots.put( sourceRoot, eclipseSourceRoot );
+                
+                writer.addAttribute( "path", eclipseSourceRoot );
 
                 if ( output != null )
                 {
@@ -379,7 +389,7 @@
         }
     }
 
-    private void addResources( XMLWriter writer, File projectBaseDir, File 
basedir, List resources, String output )
+    private void addResources( XMLWriter writer, File projectBaseDir, File 
basedir, List resources, String output, Map addedSourceRoots )
     {
         for ( Iterator it = resources.iterator(); it.hasNext(); )
         {
@@ -397,9 +407,7 @@
 
             if ( !StringUtils.isEmpty( resource.getTargetPath() ) )
             {
-                log.error( "This plugin currently doesn't support target paths 
for resources." );
-
-                return;
+               output = resource.getTargetPath();
             }
 
             File resourceDirectory = new File( resource.getDirectory() );
@@ -409,19 +417,50 @@
                 continue;
             }
 
-            writer.startElement( "classpathentry" );
-
-            writer.addAttribute( "kind", "src" );
-
             String resourceDir = resource.getDirectory();
-            resourceDir = toRelative( projectBaseDir, resourceDir );
-            if (!projectBaseDir.equals(basedir))
+            
+            // don't add the same sourceroot twice; eclipse can't handle
+            // that, even with mutual exclusive include/exclude patterns.
+            if ( addedSourceRoots.containsKey( resourceDir ) )
             {
-                resourceDir = resourceDir.replaceAll( "/", "-" );
+               continue;
             }
+
+            String eclipseResourceDir = toRelative( projectBaseDir, 
resourceDir );
+            
+            if ( ! projectBaseDir.equals( basedir ) )
+            {
+                eclipseResourceDir = eclipseResourceDir.replaceAll( "/", "-" );
+            }
+
+            addedSourceRoots.put( resourceDir, eclipseResourceDir );
             
-            writer.addAttribute( "path", resourceDir );
+            writer.startElement( "classpathentry" );
+
+            writer.addAttribute( "kind", "src" );
+            
+            writer.addAttribute( "path", eclipseResourceDir );
 
+//                     Example of setting include/exclude patterns for future 
reference.
+//
+//          TODO: figure out how to merge if the same dir is specified twice
+//          with different in/exclude patterns. We can't write them now,
+//                     since only the the first one would be included.
+//
+//          if ( resource.getIncludes().size() != 0 )
+//          {
+//             writer.addAttribute(
+//                     "including", StringUtils.join( 
resource.getIncludes().iterator(), "|" )
+//                     );
+//          }
+//
+//          if ( resource.getExcludes().size() != 0 )
+//          {
+//             writer.addAttribute(
+//                     "excluding", StringUtils.join( 
resource.getExcludes().iterator(), "|" )
+//             );
+//          }
+            
             if ( output != null )
             {
                 writer.addAttribute( "output", toRelative( projectBaseDir, 
output ) );
@@ -431,11 +470,17 @@
         }
     }
 
-    private void addSourceLinks( XMLWriter writer, File projectBaseDir, File 
basedir, List sourceRoots )
+    private void addSourceLinks( XMLWriter writer, File projectBaseDir, File 
basedir, Map sourceRoots )
     {
-        for ( Iterator it = sourceRoots.iterator(); it.hasNext(); )
+        for ( Iterator it = sourceRoots.keySet().iterator(); it.hasNext(); )
         {
             String sourceRoot = (String) it.next();
+            
+            String linkName = (String) sourceRoots.get( sourceRoot );
+            
+            sourceRoot = sourceRoot.replaceAll("\\\\", "/");
+            
+            log.debug( "Adding link '" + linkName + "' to '" + sourceRoot + 
"'" );
 
             if ( new File( sourceRoot ).isDirectory() )
             {
@@ -443,7 +488,7 @@
 
                 writer.startElement( "name" );
 
-                writer.writeText( toRelative( projectBaseDir, sourceRoot 
).replaceAll( "/", "-" ) );
+                writer.writeText( linkName );
                 
                 writer.endElement(); // name
 
@@ -455,40 +500,7 @@
 
                 writer.startElement( "location" );
 
-                writer.writeText( sourceRoot.replaceAll("\\\\", "/") );
-
-                writer.endElement(); // location
-
-                writer.endElement(); // link
-            }
-        }
-    }
-
-    private void addResourceLinks( XMLWriter writer, File projectBaseDir, File 
basedir, List sourceRoots )
-    {
-        for ( Iterator it = sourceRoots.iterator(); it.hasNext(); )
-        {
-            String resourceDir = ((Resource) it.next() ).getDirectory();
-
-            if ( new File( resourceDir ).isDirectory() )
-            {
-                writer.startElement( "link" );
-
-                writer.startElement( "name" );
-
-                writer.writeText( toRelative( projectBaseDir, resourceDir 
).replaceAll( "/", "-" ) );
-
-                writer.endElement(); // name
-
-                writer.startElement( "type" );
-
-                writer.writeText( "2" );
-
-                writer.endElement(); // type
-
-                writer.startElement( "location" );
-
-                writer.writeText( resourceDir.replaceAll( "\\\\", "/" ) );
+                writer.writeText( sourceRoot );
 
                 writer.endElement(); // location
 

Modified: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java?rev=240143&r1=240142&r2=240143&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginTest.java
 Thu Aug 25 14:28:30 2005
@@ -23,6 +23,7 @@
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.MavenProjectBuilder;
 import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.util.StringUtils;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -42,20 +43,32 @@
     public void testProject1()
         throws Exception
     {
-        testProject( "project-1" );
+        testProject( "project-1", null );
     }
 
     public void testProject2()
         throws Exception
     {
-        testProject( "project-2" );
+        testProject( "project-2", null );
+    }
+
+    public void testProject3()
+        throws Exception
+    {
+        testProject( "project-3", null );
+    }
+
+    public void testProject4()
+        throws Exception
+    {
+        testProject( "project-4",  getTestFile( "target/project-4-test/" ) );
     }
 
     // ----------------------------------------------------------------------
     //
     // ----------------------------------------------------------------------
 
-    private void testProject( String projectName )
+    private void testProject( String projectName, File outputDir )
         throws Exception
     {
         File basedir = getTestFile( "src/test/projects/" + projectName );
@@ -73,6 +86,24 @@
 
         MavenProject project = builder.buildWithDependencies( new File( 
basedir, "project.xml" ), localRepository, null );
 
+        File projectOutputDir = basedir;
+
+        if ( outputDir == null )
+        {
+            outputDir = basedir;
+        }
+        else
+        {
+            outputDir.mkdirs();
+
+            projectOutputDir = new File( outputDir, project.getArtifactId() );
+        }
+
+        System.err.println("basedir: " + basedir+"\noutputdir: " + 
outputDir+"\nprojectOutputDir: " + projectOutputDir );
+
+        plugin.setOutputDir( outputDir );
+
+
         for ( Iterator it = project.getArtifacts().iterator(); it.hasNext(); )
         {
             Artifact artifact = (Artifact) it.next();
@@ -85,9 +116,9 @@
 
         plugin.execute();
 
-        assertFileEquals( localRepository.getBasedir(), new File( basedir, 
"project" ), new File( basedir, ".project" ) );
+        assertFileEquals( localRepository.getBasedir(), new File( basedir, 
"project" ), new File( projectOutputDir, ".project" ) );
 
-        assertFileEquals( localRepository.getBasedir(), new File( basedir, 
"classpath" ), new File( basedir, ".classpath" ) );
+        assertFileEquals( localRepository.getBasedir(), new File( basedir, 
"classpath" ), new File( projectOutputDir, ".classpath" ) );
     }
 
     private void assertFileEquals( String mavenRepo, File expectedFile, File 
actualFile )
@@ -100,6 +131,11 @@
         for ( int i = 0; i < expectedLines.size(); i++ )
         {
             String expected = expectedLines.get( i ).toString();
+
+            // replace some vars in the expected line, to account
+            // for absolute paths that are different on each installation.
+
+            expected = StringUtils.replace( expected, "${basedir}", basedir );
 
             if ( actualLines.size() < i )
             {

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/classpath
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/classpath?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/classpath
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/classpath
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,8 @@
+<classpath>
+  <classpathentry kind="src" path="src/main/java"/>
+  <classpathentry kind="src" path="src/main/resources" 
output="target/main-resources"/>
+  <classpathentry kind="src" path="src/test/resources" 
output="target/test-output-dir"/>
+  <classpathentry kind="output" path="target/classes"/>
+  <classpathentry kind="var" rootpath="JRE_SRCROOT" path="JRE_LIB" 
sourcepath="JRE_SRC"/>
+  <classpathentry kind="var" path="M2_REPO/junit/jars/junit-2.0.jar"/>
+</classpath>
\ No newline at end of file

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,17 @@
+<projectDescription>
+  <name>maven-eclipse-plugin-test-project-3</name>
+  <comment>Tests creating just one sourceroot when test sourceroot and
+    main sourceroot are the same, and tests the same for 
+    two resourceroots for the same directory but with different
+    include/excludes.</comment>
+  <projects/>
+  <buildSpec>
+    <buildCommand>
+      <name>org.eclipse.jdt.core.javabuilder</name>
+      <arguments/>
+    </buildCommand>
+  </buildSpec>
+  <natures>
+    <nature>org.eclipse.jdt.core.javanature</nature>
+  </natures>
+</projectDescription>
\ No newline at end of file

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>eclipse</groupId>
+  <artifactId>maven-eclipse-plugin-test-project-3</artifactId>
+  <version>88.0</version>
+  <name>Maven</name>
+
+  <description>
+    Tests creating just one sourceroot when test sourceroot and
+    main sourceroot are the same, and tests the same for 
+    two resourceroots for the same directory but with different
+    include/excludes.
+  </description>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>2.0</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <sourceDirectory>src/main/java</sourceDirectory>
+    <testSourceDirectory>src/main/java</testSourceDirectory>
+    <testOutputDirectory>target/test-output-dir</testOutputDirectory>
+    <resources>
+      <resource>
+        <directory>src/main/resources</directory>
+        <targetPath>target/main-resources</targetPath>
+        <includes>
+          <include>**/*.xml</include>
+        </includes>
+        <excludes>
+          <exclude>**/*.properties</exclude>
+        </excludes>
+      </resource>
+      <resource>
+        <directory>src/main/resources</directory>
+        <includes>
+          <include>**/*.properties</include>
+        </includes>
+        <excludes>
+          <exclude>**/*.xml</exclude>
+        </excludes>
+      </resource>
+    </resources>
+  </build>
+
+</project>

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/project.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,7 @@
+/**
+ * @author <a href="mailto:[EMAIL PROTECTED]">Trygve Laugst&oslash;l</a>
+ * @version $Id$
+ */
+public class DummyClass
+{
+}

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/java/DummyClass.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/resources/dummy
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/main/resources/dummy?rev=240143&view=auto
==============================================================================
    (empty)

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,7 @@
+/**
+ * @author <a href="mailto:[EMAIL PROTECTED]">Trygve Laugst&oslash;l</a>
+ * @version $Id$
+ */
+public class DummyClass
+{
+}

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/java/DummyClass.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/resources/dummy
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-3/src/test/resources/dummy?rev=240143&view=auto
==============================================================================
    (empty)

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/classpath
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/classpath?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/classpath
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/classpath
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,9 @@
+<classpath>
+  <classpathentry kind="src" path="src-main-java"/>
+  <classpathentry kind="src" path="src-main-resources" 
output="target/main-resources"/>
+  <classpathentry kind="src" path="src-test-java" 
output="target/test-classes-dir"/>
+  <classpathentry kind="src" path="src-test-resources" 
output="target/test-classes-dir"/>
+  <classpathentry kind="output" path="target/classes"/>
+  <classpathentry kind="var" rootpath="JRE_SRCROOT" path="JRE_LIB" 
sourcepath="JRE_SRC"/>
+  <classpathentry kind="var" path="M2_REPO/junit/jars/junit-2.0.jar"/>
+</classpath>
\ No newline at end of file

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,41 @@
+<projectDescription>
+  <name>maven-eclipse-plugin-test-project-4</name>
+  <comment>Tests creating eclipse files in a different location</comment>
+  <projects/>
+  <buildSpec>
+    <buildCommand>
+      <name>org.eclipse.jdt.core.javabuilder</name>
+      <arguments/>
+    </buildCommand>
+  </buildSpec>
+  <natures>
+    <nature>org.eclipse.jdt.core.javanature</nature>
+  </natures>
+  <linkedResources>
+    <link>
+      <name>project.xml</name>
+      <type>1</type>
+      <location>${basedir}/src/test/projects/project-4/project.xml</location>
+    </link>
+    <link>
+      <name>src-main-java</name>
+      <type>2</type>
+      <location>${basedir}/src/test/projects/project-4/src/main/java</location>
+    </link>
+    <link>
+      <name>src-test-resources</name>
+      <type>2</type>
+      
<location>${basedir}/src/test/projects/project-4/src/test/resources</location>
+    </link>
+    <link>
+      <name>src-test-java</name>
+      <type>2</type>
+      <location>${basedir}/src/test/projects/project-4/src/test/java</location>
+    </link>
+    <link>
+      <name>src-main-resources</name>
+      <type>2</type>
+      
<location>${basedir}/src/test/projects/project-4/src/main/resources</location>
+    </link>
+  </linkedResources>
+</projectDescription>

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>eclipse</groupId>
+  <artifactId>maven-eclipse-plugin-test-project-4</artifactId>
+  <version>88.0</version>
+  <name>Maven</name>
+
+  <description>
+    Tests creating eclipse files in a different location
+  </description>
+
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>2.0</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <testOutputDirectory>target/test-classes-dir</testOutputDirectory>
+    <resources>
+      <resource>
+        <directory>src/main/resources</directory>
+        <targetPath>target/main-resources</targetPath>
+      </resource>
+    </resources>
+  </build>
+</project>

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/project.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,7 @@
+/**
+ * @author <a href="mailto:[EMAIL PROTECTED]">Trygve Laugst&oslash;l</a>
+ * @version $Id$
+ */
+public class DummyClass
+{
+}

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/java/DummyClass.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/resources/dummy
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/main/resources/dummy?rev=240143&view=auto
==============================================================================
    (empty)

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java?rev=240143&view=auto
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
 (added)
+++ 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
 Thu Aug 25 14:28:30 2005
@@ -0,0 +1,7 @@
+/**
+ * @author <a href="mailto:[EMAIL PROTECTED]">Trygve Laugst&oslash;l</a>
+ * @version $Id$
+ */
+public class DummyClass
+{
+}

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/java/DummyClass.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/resources/dummy
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-eclipse-plugin/src/test/projects/project-4/src/test/resources/dummy?rev=240143&view=auto
==============================================================================
    (empty)



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to