incubator-nmaven-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sisb...@apache.org
Subject svn commit: r540347 - /incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java
Date Mon, 21 May 2007 23:06:52 GMT
Author: sisbell
Date: Mon May 21 16:06:52 2007
New Revision: 540347

URL: http://svn.apache.org/viewvc?view=rev&rev=540347
Log:
Fixed FxCop to handle multi-module builds. A little tricky. FxCop was executing from the parent
pom so it did not recognize the correct relative path. Can't use absolute path because commandline
adds quotes that confuses FxCop. Had to rely on a system var for this one.

Modified:
    incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java

Modified: incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java?view=diff&rev=540347&r1=540346&r2=540347
==============================================================================
--- incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java
(original)
+++ incubator/nmaven/trunk/plugins/maven-fxcop-plugin/src/main/java/org/apache/maven/dotnet/plugin/fxcop/FxCopMojo.java
Mon May 21 16:06:52 2007
@@ -76,10 +76,25 @@
      */
     private File targetDirectory;
 
+    private File rootDir;
+
 
     public void execute()
         throws MojoExecutionException
     {
+        //For multi-module
+        if ( project.getPackaging().equals( "pom" ) )
+        {
+
+            if ( System.getProperty( "NMAVEN.ROOT_DIR" ) == null )
+            {
+                System.setProperty( "NMAVEN.ROOT_DIR", project.getBasedir().getAbsolutePath()
);
+            }
+            return;
+        }
+
+        rootDir = ( System.getProperty( "NMAVEN.ROOT_DIR" ) != null ) ? new File(
+            System.getProperty( "NMAVEN.ROOT_DIR" ) ) : null;
 
         ArtifactRepository localArtifactRepository =
             new DefaultArtifactRepository( "local", "file://" + localRepository, new AssemblyRepositoryLayout()
);
@@ -139,9 +154,20 @@
         throws MojoExecutionException
     {
         List<String> commands = new ArrayList<String>();
-        commands.add( "/f:target" + File.separator + project.getArtifactId() + "." +
-            ArtifactType.getArtifactTypeForPackagingName( project.getPackaging() ).getExtension()
);
-        commands.add( "/o:target" + File.separator + "Output.xml" );
+
+        String targetPath = "target" + File.separator + project.getArtifactId() + "." +
+            ArtifactType.getArtifactTypeForPackagingName( project.getPackaging() ).getExtension();
+        String outputPath = "target" + File.separator + "Output.xml";
+
+        String relativePathToTargetFile =
+            ( rootDir != null ) ? new File( project.getBasedir(), targetPath ).getAbsolutePath().substring(
+                rootDir.getAbsolutePath().length() + 1 ) : targetPath;
+        String relativePathToOutputFile =
+            ( rootDir != null ) ? new File( project.getBasedir(), outputPath ).getAbsolutePath().substring(
+                rootDir.getAbsolutePath().length() + 1 ) : outputPath;
+
+        commands.add( "/f:" + relativePathToTargetFile );
+        commands.add( "/o:" + relativePathToOutputFile );
         return commands;
     }
 }



Mime
View raw message