Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: 2.0.1
-
Fix Version/s: None
-
Labels:None
-
Number of attachments :
Description
When adding a depency to a jar which contains source code like this:
<dependency>
<groupId>com.nordija</groupId>
<artifactId>nordija-midtier</artifactId>
<version>snapshot</version>
<classifier>sources</classifier>
<scope>test</scope>
</dependency>
where I'm using the "classifier", the "compiler:testCompile" goal fails with the error:
Failure executing javac, but could not parse the error:
/home/tomcat/.m2/repository/com/nordija/nordija-midtier/snapshot/nordija-midtier-snapshot-sources.jar(com/nordija/midtier/util/NestingException.java):42: class NestingException is public, should be declared in a file named NestingException.java
(source unavailable)
1 error
Now, my first thought is of course that the jar is corrupt or packaged wrongly or something like that. But it seems to be okay, and my IDEA can browse it and does not show error-marks for the source file in question. And, the same dependency is used in another module in the same build, where it is no problem!!!
I solved the problem by going back to v2.0 of the compiler plugin, where everything works.
I have also experienced this issue using the 2.0.1 version of the plugin with 2.0.2 and 2.0.4 versions of M2, but ONLY using j2sdk 1.4.2. Here is the plugin management configuration that failed:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
<debug>true</debug>
<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>
<optimize>false</optimize>
</configuration>
</plugin>
As with the original reporter, falling back to the 2.0 version of the plugin or using j2sdk 1.5 resolved the issue.