maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Herve Boutemy (JIRA)" <j...@codehaus.org>
Subject [jira] (MCOMPILER-98) -sourcepath not passed to javac
Date Tue, 03 Mar 2015 02:16:28 GMT

     [ https://jira.codehaus.org/browse/MCOMPILER-98?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Herve Boutemy updated MCOMPILER-98:
-----------------------------------

    Description: 
JavacCompiler.java (actually in plexus-compiler-javac, but I cannot find the source project
for this anywhere) has

{code:java}        List sourceLocations = config.getSourceLocations();
        if ( sourceLocations != null && !sourceLocations.isEmpty() && ( sourceFiles.length
== 0 ) )
        {
            args.add( "-sourcepath" );

            args.add( getPathString( sourceLocations ) );
        }{code}

The {{sourceFiles.length == 0}} clause should be deleted. The problem is that javac really
does need to have -sourcepath even when you are passing an explicit list of *.java files;
it is necessary for 269-compliant annotation processors:

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6647998

Following is a patch which

1. Fixes diagnostics to print compiler arguments even for unforked mode. (javac is still run
with a command line when unforked, so there is no reason to omit this valuable diagnostic
info.)

2. Hacks maven-compiler-plugin to work around the bug in plexus-compiler-javac and pass -sourcepath.
Obviously a fix to p-c-j would be preferable.

When applied to m-c-p 2.0.2 it allows the test case to build.

  was:
JavacCompiler.java (actually in plexus-compiler-javac, but I cannot find the source project
for this anywhere) has

        List sourceLocations = config.getSourceLocations();
        if ( sourceLocations != null && !sourceLocations.isEmpty() && ( sourceFiles.length
== 0 ) )
        {
            args.add( "-sourcepath" );

            args.add( getPathString( sourceLocations ) );
        }

The sourceFiles.length == 0 clause should be deleted. The problem is that javac really does
need to have -sourcepath even when you are passing an explicit list of *.java files; it is
necessary for 269-compliant annotation processors:

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6647998

Following is a patch which

1. Fixes diagnostics to print compiler arguments even for unforked mode. (javac is still run
with a command line when unforked, so there is no reason to omit this valuable diagnostic
info.)

2. Hacks maven-compiler-plugin to work around the bug in plexus-compiler-javac and pass -sourcepath.
Obviously a fix to p-c-j would be preferable.

When applied to m-c-p 2.0.2 it allows the test case to build.


> -sourcepath not passed to javac
> -------------------------------
>
>                 Key: MCOMPILER-98
>                 URL: https://jira.codehaus.org/browse/MCOMPILER-98
>             Project: Maven Compiler Plugin
>          Issue Type: Bug
>    Affects Versions: 2.0.2
>         Environment: Ubuntu 8.10, JDK 6.
>            Reporter: Jesse Glick
>            Assignee: Milos Kleint
>            Priority: Critical
>             Fix For: 2.2
>
>         Attachments: maven-6647998-test.zip, MCOMPILER-98.diff
>
>
> JavacCompiler.java (actually in plexus-compiler-javac, but I cannot find the source project
for this anywhere) has
> {code:java}        List sourceLocations = config.getSourceLocations();
>         if ( sourceLocations != null && !sourceLocations.isEmpty() &&
( sourceFiles.length == 0 ) )
>         {
>             args.add( "-sourcepath" );
>             args.add( getPathString( sourceLocations ) );
>         }{code}
> The {{sourceFiles.length == 0}} clause should be deleted. The problem is that javac really
does need to have -sourcepath even when you are passing an explicit list of *.java files;
it is necessary for 269-compliant annotation processors:
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6647998
> Following is a patch which
> 1. Fixes diagnostics to print compiler arguments even for unforked mode. (javac is still
run with a command line when unforked, so there is no reason to omit this valuable diagnostic
info.)
> 2. Hacks maven-compiler-plugin to work around the bug in plexus-compiler-javac and pass
-sourcepath. Obviously a fix to p-c-j would be preferable.
> When applied to m-c-p 2.0.2 it allows the test case to build.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)

Mime
View raw message