Index: maven-project/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java
===================================================================
--- maven-project/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java (revision 639967)
+++ maven-project/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java (working copy)
@@ -21,6 +21,7 @@
import org.apache.maven.model.Build;
import org.apache.maven.model.Model;
+import org.apache.maven.model.Reporting;
import org.apache.maven.model.Resource;
import java.io.File;
@@ -45,6 +46,8 @@
build.setTestSourceDirectory( alignToBaseDirectory( build.getTestSourceDirectory(), basedir ) );
+ build.setScriptSourceDirectory( alignToBaseDirectory( build.getScriptSourceDirectory(), basedir ) );
+
for ( Iterator i = build.getResources().iterator(); i.hasNext(); )
{
Resource resource = (Resource) i.next();
@@ -75,6 +78,13 @@
build.setTestOutputDirectory( alignToBaseDirectory( build.getTestOutputDirectory(), basedir ) );
}
+
+ Reporting reporting = model.getReporting();
+
+ if ( reporting != null )
+ {
+ reporting.setOutputDirectory( alignToBaseDirectory( reporting.getOutputDirectory(), basedir ) );
+ }
}
public String alignToBaseDirectory( String path, File basedir )
@@ -136,6 +146,8 @@
build.setTestSourceDirectory( unalignFromBaseDirectory( build.getTestSourceDirectory(), basedir ) );
+ build.setScriptSourceDirectory( unalignFromBaseDirectory( build.getScriptSourceDirectory(), basedir ) );
+
for ( Iterator i = build.getResources().iterator(); i.hasNext(); )
{
Resource resource = (Resource) i.next();
@@ -166,6 +178,13 @@
build.setTestOutputDirectory( unalignFromBaseDirectory( build.getTestOutputDirectory(), basedir ) );
}
+
+ Reporting reporting = model.getReporting();
+
+ if ( reporting != null )
+ {
+ reporting.setOutputDirectory( unalignFromBaseDirectory( reporting.getOutputDirectory(), basedir ) );
+ }
}
public String unalignFromBaseDirectory( String directory, File basedir )
@@ -179,4 +198,3 @@
}
}
-
Index: maven-project/src/test/java/org/apache/maven/project/ProjectBaseDirectoryAlignmentTest.java
===================================================================
--- maven-project/src/test/java/org/apache/maven/project/ProjectBaseDirectoryAlignmentTest.java (revision 639967)
+++ maven-project/src/test/java/org/apache/maven/project/ProjectBaseDirectoryAlignmentTest.java (working copy)
@@ -20,6 +20,7 @@
*/
import org.apache.maven.model.Build;
+import org.apache.maven.model.Reporting;
import org.apache.maven.model.Resource;
import java.io.File;
@@ -38,18 +39,28 @@
assertNotNull( "Test project can't be null!", project );
- File basedirFile = new File( getBasedir() );
- File sourceDirectoryFile = new File( project.getBuild().getSourceDirectory() );
- File testSourceDirectoryFile = new File( project.getBuild().getTestSourceDirectory() );
+ Build build = project.getBuild();
- assertEquals( basedirFile.getCanonicalPath(), sourceDirectoryFile.getCanonicalPath().substring( 0, getBasedir().length() ) );
+ assertTrue( new File( build.getDirectory() ).isAbsolute() );
- assertEquals( basedirFile.getCanonicalPath(), testSourceDirectoryFile.getCanonicalPath().substring( 0, getBasedir().length() ) );
+ assertTrue( new File( build.getOutputDirectory() ).isAbsolute() );
- Build build = project.getBuild();
+ assertTrue( new File( build.getSourceDirectory() ).isAbsolute() );
+ assertTrue( new File( build.getTestSourceDirectory() ).isAbsolute() );
+
+ assertTrue( new File( build.getScriptSourceDirectory() ).isAbsolute() );
+
Resource resource = (Resource) build.getResources().get( 0 );
- assertTrue( resource.getDirectory().startsWith( getBasedir() ) );
+ assertTrue( new File( resource.getDirectory() ).isAbsolute() );
+
+ Resource testResource = (Resource) build.getTestResources().get( 0 );
+
+ assertTrue( new File( testResource.getDirectory() ).isAbsolute() );
+
+ Reporting reporting = project.getReporting();
+
+ assertTrue( new File( reporting.getOutputDirectory() ).isAbsolute() );
}
}
Index: maven-project/src/test/resources/projects/base-directory-alignment/project-which-needs-directory-alignment.xml
===================================================================
--- maven-project/src/test/resources/projects/base-directory-alignment/project-which-needs-directory-alignment.xml (revision 639967)
+++ maven-project/src/test/resources/projects/base-directory-alignment/project-which-needs-directory-alignment.xml (working copy)
@@ -101,8 +101,12 @@
+ directory
+ outputDirectory
+ testOutputDirectory
sourceDirectory
unitTestSourceDirectory
+ scriptSourceDirectory
src/test
@@ -132,4 +136,7 @@
+
+ reportOutputDirectory
+