mirror of https://github.com/apache/maven.git
PR: MNG-1034
use reporting for default output directory git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@292104 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
c5d1b378f2
commit
2bc0f749a1
|
@ -2,7 +2,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<artifactId>maven-plugin-parent</artifactId>
|
<artifactId>maven-plugin-parent</artifactId>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<version>2.0-beta-1</version>
|
<version>2.0-beta-3-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<artifactId>maven-checkstyle-plugin</artifactId>
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
||||||
|
@ -10,6 +10,9 @@
|
||||||
<name>Maven Checkstyle Plugin</name>
|
<name>Maven Checkstyle Plugin</name>
|
||||||
<version>2.0-alpha-3-SNAPSHOT</version>
|
<version>2.0-alpha-3-SNAPSHOT</version>
|
||||||
<inceptionYear>2005</inceptionYear>
|
<inceptionYear>2005</inceptionYear>
|
||||||
|
<prerequisites>
|
||||||
|
<maven>2.0-beta-3-SNAPSHOT</maven>
|
||||||
|
</prerequisites>
|
||||||
<developers>
|
<developers>
|
||||||
<developer>
|
<developer>
|
||||||
<id>vsiveton</id>
|
<id>vsiveton</id>
|
||||||
|
|
|
@ -16,6 +16,18 @@ package org.apache.maven.plugin.checkstyle;
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import com.puppycrawl.tools.checkstyle.Checker;
|
||||||
|
import com.puppycrawl.tools.checkstyle.ConfigurationLoader;
|
||||||
|
import com.puppycrawl.tools.checkstyle.DefaultLogger;
|
||||||
|
import com.puppycrawl.tools.checkstyle.ModuleFactory;
|
||||||
|
import com.puppycrawl.tools.checkstyle.PackageNamesLoader;
|
||||||
|
import com.puppycrawl.tools.checkstyle.PropertiesExpander;
|
||||||
|
import com.puppycrawl.tools.checkstyle.XMLLogger;
|
||||||
|
import com.puppycrawl.tools.checkstyle.api.AuditListener;
|
||||||
|
import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
|
||||||
|
import com.puppycrawl.tools.checkstyle.api.Configuration;
|
||||||
|
import com.puppycrawl.tools.checkstyle.api.FilterSet;
|
||||||
|
import com.puppycrawl.tools.checkstyle.filters.SuppressionsLoader;
|
||||||
import org.apache.maven.project.MavenProject;
|
import org.apache.maven.project.MavenProject;
|
||||||
import org.apache.maven.reporting.AbstractMavenReport;
|
import org.apache.maven.reporting.AbstractMavenReport;
|
||||||
import org.apache.maven.reporting.MavenReportException;
|
import org.apache.maven.reporting.MavenReportException;
|
||||||
|
@ -23,19 +35,6 @@ import org.codehaus.doxia.site.renderer.SiteRenderer;
|
||||||
import org.codehaus.plexus.util.FileUtils;
|
import org.codehaus.plexus.util.FileUtils;
|
||||||
import org.codehaus.plexus.util.StringUtils;
|
import org.codehaus.plexus.util.StringUtils;
|
||||||
|
|
||||||
import com.puppycrawl.tools.checkstyle.api.AuditListener;
|
|
||||||
import com.puppycrawl.tools.checkstyle.api.Configuration;
|
|
||||||
import com.puppycrawl.tools.checkstyle.ConfigurationLoader;
|
|
||||||
import com.puppycrawl.tools.checkstyle.Checker;
|
|
||||||
import com.puppycrawl.tools.checkstyle.DefaultLogger;
|
|
||||||
import com.puppycrawl.tools.checkstyle.ModuleFactory;
|
|
||||||
import com.puppycrawl.tools.checkstyle.PackageNamesLoader;
|
|
||||||
import com.puppycrawl.tools.checkstyle.PropertiesExpander;
|
|
||||||
import com.puppycrawl.tools.checkstyle.XMLLogger;
|
|
||||||
import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
|
|
||||||
import com.puppycrawl.tools.checkstyle.api.FilterSet;
|
|
||||||
import com.puppycrawl.tools.checkstyle.filters.SuppressionsLoader;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
|
@ -48,11 +47,10 @@ import java.util.Properties;
|
||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @goal checkstyle
|
|
||||||
*
|
|
||||||
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
|
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
|
||||||
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
|
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
|
||||||
* @version $Id: DependenciesReport.java,v 1.2 2005/02/23 00:08:02 brett Exp $
|
* @version $Id: DependenciesReport.java,v 1.2 2005/02/23 00:08:02 brett Exp $
|
||||||
|
* @goal checkstyle
|
||||||
*/
|
*/
|
||||||
public class CheckstyleReport
|
public class CheckstyleReport
|
||||||
extends AbstractMavenReport
|
extends AbstractMavenReport
|
||||||
|
@ -60,10 +58,10 @@ public class CheckstyleReport
|
||||||
/**
|
/**
|
||||||
* Specifies the directory where the report will be generated
|
* Specifies the directory where the report will be generated
|
||||||
*
|
*
|
||||||
* @parameter expression="${project.build.directory}/site"
|
* @parameter default-value="${project.reporting.outputDirectory}"
|
||||||
* @required
|
* @required
|
||||||
*/
|
*/
|
||||||
private String outputDirectory;
|
private File outputDirectory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specifies the names filter of the source files to be used for checkstyle
|
* Specifies the names filter of the source files to be used for checkstyle
|
||||||
|
@ -125,7 +123,7 @@ public class CheckstyleReport
|
||||||
*
|
*
|
||||||
* @parameter
|
* @parameter
|
||||||
*/
|
*/
|
||||||
private String useFile;
|
private File useFile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specifies the location of the supperssions XML file to use. The plugin defines a Checkstyle
|
* Specifies the location of the supperssions XML file to use. The plugin defines a Checkstyle
|
||||||
|
@ -210,7 +208,7 @@ public class CheckstyleReport
|
||||||
*/
|
*/
|
||||||
protected String getOutputDirectory()
|
protected String getOutputDirectory()
|
||||||
{
|
{
|
||||||
return outputDirectory;
|
return outputDirectory.getAbsolutePath();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -255,10 +253,14 @@ public class CheckstyleReport
|
||||||
checker = new Checker();
|
checker = new Checker();
|
||||||
|
|
||||||
if ( moduleFactory != null )
|
if ( moduleFactory != null )
|
||||||
|
{
|
||||||
checker.setModuleFactory( moduleFactory );
|
checker.setModuleFactory( moduleFactory );
|
||||||
|
}
|
||||||
|
|
||||||
if ( filterSet != null )
|
if ( filterSet != null )
|
||||||
|
{
|
||||||
checker.addFilter( filterSet );
|
checker.addFilter( filterSet );
|
||||||
|
}
|
||||||
|
|
||||||
checker.configure( config );
|
checker.configure( config );
|
||||||
}
|
}
|
||||||
|
@ -274,11 +276,9 @@ public class CheckstyleReport
|
||||||
checker.addListener( listener );
|
checker.addListener( listener );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( StringUtils.isNotEmpty( useFile ) )
|
if ( useFile != null )
|
||||||
{
|
{
|
||||||
File outputFile = new File( useFile );
|
OutputStream out = getOutputStream( useFile );
|
||||||
|
|
||||||
OutputStream out = getOutputStream( outputFile );
|
|
||||||
|
|
||||||
checker.addListener( new DefaultLogger( out, true ) );
|
checker.addListener( new DefaultLogger( out, true ) );
|
||||||
}
|
}
|
||||||
|
@ -326,8 +326,8 @@ public class CheckstyleReport
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw new MavenReportException( "Invalid output file format: (" + outputFileFormat
|
throw new MavenReportException(
|
||||||
+ "). Must be 'plain' or 'xml'." );
|
"Invalid output file format: (" + outputFileFormat + "). Must be 'plain' or 'xml'." );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -337,14 +337,14 @@ public class CheckstyleReport
|
||||||
private OutputStream getOutputStream( File file )
|
private OutputStream getOutputStream( File file )
|
||||||
throws MavenReportException
|
throws MavenReportException
|
||||||
{
|
{
|
||||||
FileOutputStream out;
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
File parentFile = file.getParentFile();
|
File parentFile = file.getAbsoluteFile().getParentFile();
|
||||||
|
|
||||||
if ( !parentFile.exists() )
|
if ( !parentFile.exists() )
|
||||||
|
{
|
||||||
parentFile.mkdirs();
|
parentFile.mkdirs();
|
||||||
|
}
|
||||||
|
|
||||||
return new FileOutputStream( file );
|
return new FileOutputStream( file );
|
||||||
}
|
}
|
||||||
|
@ -405,11 +405,15 @@ public class CheckstyleReport
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( headerFile != null )
|
if ( headerFile != null )
|
||||||
|
{
|
||||||
p.setProperty( "checkstyle.header.file", headerFile );
|
p.setProperty( "checkstyle.header.file", headerFile );
|
||||||
|
}
|
||||||
|
|
||||||
if ( cacheFile != null )
|
if ( cacheFile != null )
|
||||||
|
{
|
||||||
p.setProperty( "checkstyle.cache.file", cacheFile );
|
p.setProperty( "checkstyle.cache.file", cacheFile );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
catch ( IOException e )
|
catch ( IOException e )
|
||||||
{
|
{
|
||||||
throw new MavenReportException( "Failed to get overriding properties", e );
|
throw new MavenReportException( "Failed to get overriding properties", e );
|
||||||
|
@ -448,7 +452,9 @@ public class CheckstyleReport
|
||||||
throws MavenReportException
|
throws MavenReportException
|
||||||
{
|
{
|
||||||
if ( StringUtils.isEmpty( packageNamesFile ) )
|
if ( StringUtils.isEmpty( packageNamesFile ) )
|
||||||
|
{
|
||||||
return null;
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -464,7 +470,9 @@ public class CheckstyleReport
|
||||||
throws MavenReportException
|
throws MavenReportException
|
||||||
{
|
{
|
||||||
if ( StringUtils.isEmpty( suppressionsFile ) )
|
if ( StringUtils.isEmpty( suppressionsFile ) )
|
||||||
|
{
|
||||||
return null;
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue