ich die folgende Fehlermeldung erhalten, wenn ichJavadoc Generation fehlgeschlagen: Classcast: com.sun.tools.javadoc.ClassDocImpl nicht com.sun.javadoc.AnnotationTypeDoc gegossen werden kann
mvn clean deploy -DperformRelease=true
[ERROR ] Exit-Code: 1 - .java: 3: Paket javax.inject ist nicht vorhanden
[ERROR] import javax.inject.Named;
[ERROR]^
[ERROR] TransactionServiceExternalImpl.java:5: nicht Symbol
[ERROR] Symbol gekennzeichnet ist: Klasse mit dem Namen
[ERROR] @Named ("transactionServiceExternal")
[ERROR]^
[ERROR] java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl kann nicht auf com.sun.javadoc.AnnotationTypeDoc
Die POM ist diese gegossen werden ...
<groupId>com.xxx</groupId>
<artifactId>ts-impl/artifactId>
<version>2.4.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>
</dependencies>
Es gibt nur eine Klasse ...
import javax.inject.Named;
@Named("transactionServiceExternal")
public class TransactionServiceExternalImpl
{
}
Ich erhalte den Fehler mit
- jdk1.5.0_22
- jdk1.6.0_29
- jdk1.6.0_43
- jdk1.6.0_43_32bit
Aber nicht mit. ..
- jdk1.7.0_05
Wer irgendwelche Ideen?
Anmerkungen: Apache Maven 3.0.4 (r1232337; 2012-01-17 08: 44: 56 + 0000)
Ich weiß jetzt, dass der Grund ist, dass das Plugin Maven Javadoc von 2,9 geändert hat .1 bis 2.10. und das ist die Ursache des Problems.
ich diese Warnung sehen ...
[WARNUNG] 'build.plugins.plugin.version' für org.apache.maven.plugins: Maven-Javadoc-Plugin fehlt. [WARNUNG] 'build.plugins.plugin.version' für org.apache.maven.plugins: maven-deploy-plugin fehlt.
Durch die Einstellung des folgend in meinem pom ....
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
ich die Version zurück zur letzten Version beheben kann.
Ich werde einen Fehler mit den Maven Javadoc Schöpfern auslösen.
http://jira.codehaus.org/browse/MJAVADOC-407
Auf einer seitlichen Anmerkung: Sie können die SVN-Repo für die Version 2.9.1, klonen die pom zu 2.10.1 aktualisieren, führen Sie eine mvn installieren Sie es in Ihnen M2 setzen Mappe. Sie sollten wieder auf und arbeiten, Sie müssen nur diese tmp-Version entfernen, wenn die echte Veröffentlichung herauskommt.
Dies ist eine gute Zusammenfassung der Optionen ab 2014-09-23. Die einzige Sache, die ich hinzufügen könnte, ist zu beobachten/zu überwachen und vote up http://jira.codehaus.org/browse/MJAVADOC-408 .. oder senden Sie einen Patch :) –
Es ist bemerkenswert, dass '-Dmaven.javadoc.skip = true' hilft nicht, wenn Sie 'mvn release: perform' ausführen. –
@ MarcelStör das ist falsch. Nach der typischen Verwendung des Release-Plugins müssen Sie Argumente über etwas wie -Darguments = "- Dmaven.javadoc.skip = true" übergeben. Dies haben wir hier gemacht, um das Problem unserer Releases zu umgehen. http://maven.apache.org/maven-release/maven-release-plugin/perform-mojo.html – Noremac