Dostaję następujący błąd podczas zrobićgeneracja Javadoc nie powiodło się: ClassCastException: com.sun.tools.javadoc.ClassDocImpl nie mogą być oddane do com.sun.javadoc.AnnotationTypeDoc
mvn clean deploy -DperformRelease=true
[Błąd ] Kod zakończenia: 1 - .java: 3: pakiet javax.inject nie jest istnieje
[BŁĄD] import javax.inject.Named;
[błąd]^
[błąd] TransactionServiceExternalImpl.java:5: nie można znaleźć symbolu
[błąd] Symbol: klasy o nazwie
[błąd] @Named ("transactionServiceExternal")
[błąd]^
[błąd] java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl nie mogą być oddane do com.sun.javadoc.AnnotationTypeDoc
POM jest to ...
<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>
Jest tylko jedna klasa ...
import javax.inject.Named;
@Named("transactionServiceExternal")
public class TransactionServiceExternalImpl
{
}
pojawia się błąd z
- jdk1.5.0_22
- jdk1.6.0_29
- jdk1.6.0_43
- jdk1.6.0_43_32bit
Ale NIE z. ..
- jdk1.7.0_05
Ktoś ma jakieś pomysły?
Uwagi: Apache Maven 3.0.4 (r1232337; 2012-01-17 08: 44: 56 + 0000)
Teraz wiem, że powodem jest to, że Maven Javadoc Plugin zmieniła się z 2,9 .1 do 2.10. i to jest przyczyną problemu.
widzę to ostrzeżenie ...
[OSTRZEŻENIE] 'build.plugins.plugin.version' dla org.apache.maven.plugins: Maven-javadoc-plugin brakuje. [OSTRZEŻENIE] "build.plugins.plugin.version" dla org.apache.maven.plugins: maven-deploy-plugin brakuje.
Poprzez ustawienie następujących w moim 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>
mogę ustalić wersję z powrotem do ostatniego wydania.
Podniosę błąd z twórcami Javadoc Maven.
http://jira.codehaus.org/browse/MJAVADOC-407
Na marginesie: można sklonować repo SVN dla wersji 2.9.1, zaktualizuj pom do 2.10.1, zrobić mvn zainstalować go umieścić w was M2 teczka. Powinieneś zacząć działać i po prostu musisz usunąć tę wersję tmp, kiedy pojawi się prawdziwe wydanie.
To jest dobre podsumowanie opcji od 2014-09-23. Jedyne, co mogę dodać, to oglądać/monitorować i głosować pod adresem http://jira.codehaus.org/browse/MJAVADOC-408 .. lub przesłać poprawkę :) –
Warto zauważyć, że '-Dmaven.javadoc.skip = true' nie pomoże, jeśli uruchomisz 'mvn release: perform'. –
@ MarcelStör jest to nieprawidłowe. Po typowym użyciu wtyczki wydania, musisz przekazać argumenty za pomocą czegoś takiego jak -Darguments = "- Dmaven.javadoc.skip = true". Oto, co zrobiliśmy tutaj, aby obejść problem w naszych wydaniach. http://maven.apache.org/maven-release/maven-release-plugin/perform-mojo.html – Noremac