You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Benson Margulies (JIRA)" <ji...@codehaus.org> on 2015/01/26 19:53:19 UTC

[jira] (MCOMPILER-120) Javac compiler plugin doesn't support -Werror

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

Benson Margulies reopened MCOMPILER-120:
----------------------------------------


I'm reopening this because the 'fix' has a pretty major problem: no message os printed explaining why the compilation fails. Adding -e and -X do not lead to the actual message arriving.

{noformat}
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 179 source files to /Users/benson/x/gcoref/core/target/classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.000 s
[INFO] Finished at: 2015-01-26T13:50:23-05:00
[INFO] Final Memory: 30M/705M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project res-core: Compilation failure -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
{noformat}

Here's the effective pom of note:

{code}
          <execution>
            <id>default-compile</id>
            <phase>compile</phase>
            <goals>
              <goal>compile</goal>
            </goals>
            <configuration>
              <compilerArgs>
                <arg>-Werror</arg>
                <arg>-Xlint:all</arg>
              </compilerArgs>
              <showDeprecation>true</showDeprecation>
              <showWarnings>true</showWarnings>
              <fork>true</fork>
              <verbose>true</verbose>
              <encoding>utf-8</encoding>
              <source>1.7</source>
              <target>1.7</target>
              <maxmem>256M</maxmem>
              <debug>true</debug>
              <optimize>true</optimize>
            </configuration>
          </execution>
{code}

> Javac compiler plugin doesn't support -Werror
> ---------------------------------------------
>
>                 Key: MCOMPILER-120
>                 URL: https://jira.codehaus.org/browse/MCOMPILER-120
>             Project: Maven Compiler Plugin
>          Issue Type: Bug
>    Affects Versions: 2.1
>            Reporter: Christopher Webster
>            Assignee: Kristian Rosenvold
>             Fix For: 2.4
>
>         Attachments: JavacCompiler.java, JavacCompiler.patch, trial-maven.zip, werror.zip
>
>
> If I write a pom file like the following:
> {code:xml}...
>   		<plugin>
>   			<groupId>org.apache.maven.plugins</groupId>
>   			<artifactId>maven-compiler-plugin</artifactId>
>   			<version>2.1</version>
>   			<configuration>
>   			    <compilerId>javac</compilerId>
>   				<source>1.6</source>
>   				<target>1.6</target>
>   				
>   				<compilerArguments>
>   					<Werror /> 
>   					<Xlint:all />
>   				</compilerArguments>
>   				<showDeprecation>true</showDeprecation>
>   			</configuration>
>   		</plugin>{code}
> and if there are only warnings, then the build will not fail as intended by the compiler Argument. The reason is that in compileInProcess the exit code from javac is only considered if there are no messages. In the case of treating warnings as errors, there will be messages but no errors so the intention of the build failure is lost. 



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