You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ol...@apache.org on 2011/10/21 11:15:03 UTC
svn commit: r1187230 - in /tomcat/maven-plugin/trunk:
common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/
tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/
tomcat7-maven-plugin/src/main/java/org/apache/...
Author: olamy
Date: Fri Oct 21 09:15:03 2011
New Revision: 1187230
URL: http://svn.apache.org/viewvc?rev=1187230&view=rev
Log:
[MTOMCAT-77] Add support for using the test classpath instead of the compile classpath with tomcat:run.
Modified:
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/ClassLoaderEntriesCalculatorRequest.java
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/DefaultClassLoaderEntriesCalculator.java
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RunMojo.java
tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/run/RunMojo.java
Modified: tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/ClassLoaderEntriesCalculatorRequest.java
URL: http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/ClassLoaderEntriesCalculatorRequest.java?rev=1187230&r1=1187229&r2=1187230&view=diff
==============================================================================
--- tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/ClassLoaderEntriesCalculatorRequest.java (original)
+++ tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/ClassLoaderEntriesCalculatorRequest.java Fri Oct 21 09:15:03 2011
@@ -38,6 +38,8 @@ public class ClassLoaderEntriesCalculato
private boolean addWarDependenciesInClassloader;
+ private boolean useTestClassPath;
+
public MavenProject getMavenProject()
{
return mavenProject;
@@ -82,4 +84,15 @@ public class ClassLoaderEntriesCalculato
this.addWarDependenciesInClassloader = addWarDependenciesInClassloader;
return this;
}
+
+ public boolean isUseTestClassPath()
+ {
+ return useTestClassPath;
+ }
+
+ public ClassLoaderEntriesCalculatorRequest setUseTestClassPath( boolean useTestClassPath )
+ {
+ this.useTestClassPath = useTestClassPath;
+ return this;
+ }
}
Modified: tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/DefaultClassLoaderEntriesCalculator.java
URL: http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/DefaultClassLoaderEntriesCalculator.java?rev=1187230&r1=1187229&r2=1187230&view=diff
==============================================================================
--- tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/DefaultClassLoaderEntriesCalculator.java (original)
+++ tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/run/DefaultClassLoaderEntriesCalculator.java Fri Oct 21 09:15:03 2011
@@ -61,8 +61,9 @@ public class DefaultClassLoaderEntriesCa
try
{
- @SuppressWarnings( "unchecked" ) List<String> classPathElements =
- request.getMavenProject().getCompileClasspathElements();
+ @SuppressWarnings( "unchecked" ) List<String> classPathElements = request.isUseTestClassPath()
+ ? request.getMavenProject().getTestClasspathElements()
+ : request.getMavenProject().getCompileClasspathElements();
if ( classPathElements != null )
{
for ( String classPathElement : classPathElements )
@@ -90,7 +91,8 @@ public class DefaultClassLoaderEntriesCa
String scope = artifact.getScope();
// skip provided and test scoped artifacts
- if ( !Artifact.SCOPE_PROVIDED.equals( scope ) && !Artifact.SCOPE_TEST.equals( scope ) )
+ if ( !Artifact.SCOPE_PROVIDED.equals( scope ) && ( !Artifact.SCOPE_TEST.equals( scope )
+ || request.isUseTestClassPath() ) )
{
request.getLog().debug(
"add dependency to webapploader " + artifact.getGroupId() + ":" + artifact.getArtifactId() + ":"
Modified: tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RunMojo.java
URL: http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RunMojo.java?rev=1187230&r1=1187229&r2=1187230&view=diff
==============================================================================
--- tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RunMojo.java (original)
+++ tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RunMojo.java Fri Oct 21 09:15:03 2011
@@ -49,7 +49,7 @@ import java.util.Set;
* @version $Id: RunMojo.java 13551 2011-02-09 16:05:47Z olamy $
* @goal run
* @execute phase="compile"
- * @requiresDependencyResolution runtime
+ * @requiresDependencyResolution test
*/
public class RunMojo
extends AbstractRunMojo
@@ -108,6 +108,14 @@ public class RunMojo
*/
private boolean addWarDependenciesInClassloader;
+ /**
+ * will use the test classpath rather than the compile one and will add test dependencies too
+ *
+ * @parameter expression="${maven.tomcat.useTestClasspath}" default-value="false"
+ * @since 2.0
+ */
+ private boolean useTestClasspath;
+
private File temporaryContextFile = null;
// ----------------------------------------------------------------------
@@ -150,7 +158,7 @@ public class RunMojo
ClassLoaderEntriesCalculatorRequest request =
new ClassLoaderEntriesCalculatorRequest().setDependencies( dependencies ).setLog(
getLog() ).setMavenProject( project ).setAddWarDependenciesInClassloader(
- addWarDependenciesInClassloader );
+ addWarDependenciesInClassloader ).setUseTestClassPath( useTestClasspath );
List<String> classLoaderEntries = classLoaderEntriesCalculator.calculateClassPathEntries( request );
if ( classLoaderEntries != null )
Modified: tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/run/RunMojo.java
URL: http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/run/RunMojo.java?rev=1187230&r1=1187229&r2=1187230&view=diff
==============================================================================
--- tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/run/RunMojo.java (original)
+++ tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/run/RunMojo.java Fri Oct 21 09:15:03 2011
@@ -104,6 +104,14 @@ public class RunMojo
*/
private boolean addWarDependenciesInClassloader;
+ /**
+ * will use the test classpath rather than the compile one and will add test dependencies too
+ *
+ * @parameter expression="${maven.tomcat.useTestClasspath}" default-value="false"
+ * @since 2.0
+ */
+ private boolean useTestClasspath;
+
private File temporaryContextFile = null;
/**
@@ -210,7 +218,7 @@ public class RunMojo
ClassLoaderEntriesCalculatorRequest request =
new ClassLoaderEntriesCalculatorRequest().setDependencies( dependencies ).setLog(
getLog() ).setMavenProject( project ).setAddWarDependenciesInClassloader(
- addWarDependenciesInClassloader );
+ addWarDependenciesInClassloader ).setUseTestClassPath( useTestClasspath );
List<String> classLoaderEntries = classLoaderEntriesCalculator.calculateClassPathEntries( request );
if ( classLoaderEntries != null )
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org