You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Kristian Rosenvold (JIRA)" <ji...@codehaus.org> on 2011/04/19 21:14:22 UTC
[jira] Commented: (SUREFIRE-727) Classpath too long on windows with
useManifestOnlyJar=false
[ http://jira.codehaus.org/browse/SUREFIRE-727?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=263962#action_263962 ]
Kristian Rosenvold commented on SUREFIRE-727:
---------------------------------------------
According to http://support.microsoft.com/?kbid=830473, this solution should help for all but the most antique windows versions.
> Classpath too long on windows with useManifestOnlyJar=false
> -----------------------------------------------------------
>
> Key: SUREFIRE-727
> URL: http://jira.codehaus.org/browse/SUREFIRE-727
> Project: Maven Surefire
> Issue Type: Bug
> Components: Maven Surefire Plugin
> Affects Versions: 2.8.1
> Reporter: kevin aloisi
> Priority: Critical
>
> If the useMandifestOnlyJar=false, then then jnuit won't run on windows because the classpath is to long. The better way to fork a java process is to set the CLASSPATH env variable instead of passing it on the command line.
> This patch fixes the issue.
> Index: src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkConfiguration.java
> ===================================================================
> --- src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkConfiguration.java (revision 1092789)
> +++ src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkConfiguration.java (working copy)
> @@ -221,13 +221,13 @@
> }
> else
> {
> - cli.createArg().setValue( "-classpath" );
> -
> - cli.createArg().setValue( StringUtils.join( classPath.iterator(), File.pathSeparator ) );
> +// cli.createArg().setValue( "-classpath" );
> +// cli.createArg().setValue( StringUtils.join( classPath.iterator(), File.pathSeparator ) );
> + cli.addEnvironment("CLASSPATH",StringUtils.join( classPath.iterator(), File.pathSeparator ));
> +
> + final String forkedBooter = ForkedBooter.class.getName();
>
> - final String forkedBooter = ForkedBooter.class.getName();
> -
> - cli.createArg().setValue( shadefire ? new Relocator( ).relocate( forkedBooter ) : forkedBooter);
> + cli.createArg().setValue( shadefire ? new Relocator( ).relocate( forkedBooter ) : forkedBooter);
> }
>
> cli.setWorkingDirectory( workingDirectory.getAbsolutePath() );
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira