Maven n'est pas de travail dans Java 8 lors de la Javadoc, les balises sont incomplètes

Depuis que j'utilise Maven, j'ai été en mesure de construire et d'installer dans mon dépôt local des projets qui ont incomplète Javadoc balises (par exemple, un paramètre manquant).

Cependant, depuis que j'ai migré vers Java 8 (1.8.0-ea-b90) Maven est absolument stricte sur le manque de documentation sur les tags et me montrer beaucoup de Javadoc des erreurs liées à la Javadoc des problèmes lorsque j'essaie de construire ou d'installer un projet où la Javadoc n'est pas "parfait". Certains des projets que je suis en train de compiler et de l'installer dans mon référentiel local sont des projets de tiers à partir de laquelle je n'ai pas de contrôle. Donc, la solution de juste à la fixation de tous les Javadocs dans tous ces projets ne semble pas être réalisable dans mon scénario.

C'est une petite partie de la sortie, je vois quand j'execute mvn clean package install dans mon projet:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.026s
[INFO] Finished at: Mon Apr 08 21:06:17 CEST 2013
[INFO] Final Memory: 27M/437M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.9:jar (attach-javadocs) on project jpc: MavenReportException: Error while creating archive:
[ERROR] Exit code: 1 - /Users/sergioc/Documents/workspaces/heal/jpc/src/main/java/org/jpc/engine/prolog/PrologDatabase.java:10: error: @param name not found
[ERROR] * @param terms the terms to assert
[ERROR] ^
[ERROR] /Users/sergioc/Documents/workspaces/heal/jpc/src/main/java/org/jpc/engine/prolog/PrologDatabase.java:11: warning: no description for @return
[ERROR] * @return
[ERROR] ^

La Javadoc Maven plugin est configuré comme ça dans mon POM:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Comme je l'ai dit avant, tout fonctionne très bien si je reviens vers Java 7.
Peut-être est-ce un bug lié à l'exécution de Maven dans Java 8?
Comment pourrais-je le faire fonctionner (c'est à dire, être en mesure de construire la Javadoc du projet et d'installer son code dans mon dépôt local) avec Java 8?
J'ai testé avec les deux Maven 3.0.3 et 3.0.5 dans OSX.

Mise à JOUR:

Si je change mon Javadoc de configuration du plugin avec <failOnError>false</failOnError> (merci Martin):

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Puis le projet est installé dans mon dépôt local. Cependant, la Javadoc POT n'est pas encore généré.

Un fragment de la sortie, je vois dans la console avec cette nouvelle configuration est:

[ERREUR] MavenReportException: Erreur lors de la création de l'archive: Sortie
code: 1 - /Users/....java:18: avertissement: aucune @param ... de la ligne de Commande
a: /Library/Java/Home/bin/javadoc @options @paquets

Reportez-vous à la générées Javadoc fichiers dans
/Utilisateurs/sergioc/Documents/espaces de travail/heal/minitoolbox/cible/apidocs'
dir.

à
org.apache.maven.plugin.javadoc.AbstractJavadocMojo.executeJavadocCommandLine(AbstractJavadocMojo.java:5043)
au
org.apache.maven.plugin.javadoc.AbstractJavadocMojo.executeReport(AbstractJavadocMojo.java:1990)
au
org.apache.maven.plugin.javadoc.JavadocJar.execute(JavadocJar.java:181)
au
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
au
org.apache.maven.cycle de vie.interne.MojoExecutor.execute(MojoExecutor.java:209)
au
org.apache.maven.cycle de vie.interne.MojoExecutor.execute(MojoExecutor.java:153)
au
org.apache.maven.cycle de vie.interne.MojoExecutor.execute(MojoExecutor.java:145)
au
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
au
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
au
org.apache.maven.cycle de vie.interne.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
au
org.apache.maven.cycle de vie.interne.LifecycleStarter.execute(LifecycleStarter.java:161)
au org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) à
org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) à
org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) à
org.apache.maven.cli.MavenCli.domaine(MavenCli.java:196) à
org.apache.maven.cli.MavenCli.principale(MavenCli.java:141) à
soleil.de réfléchir.NativeMethodAccessorImpl.invoke0(Native method) at
soleil.de réfléchir.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
au
soleil.de réfléchir.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
à java.lang.de réfléchir.La méthode.invoke(la Méthode.java:491) à
org.codehaus.plexus.classworlds.lanceur.Lanceur.launchEnhanced(Lanceur.java:290)
au
org.codehaus.plexus.classworlds.lanceur.Lanceur.lancement du Lanceur.java:230)
au
org.codehaus.plexus.classworlds.lanceur.Lanceur.mainWithExitCode(Lanceur.java:409)
au
org.codehaus.plexus.classworlds.lanceur.Lanceur.principale(Lanceur.java:352)

Aucune solution de contournement sur la façon de compiler les sources, installez le projet et de générer la Javadoc POT en une seule étape, car il a été de travailler avec Java 7?

  • Salut @75inchpianist, j'ai mis à jour la question, en fait, ils sont des erreurs (bien que de manière assez surprenante, la dernière ligne de l'erreur fait référence à un avertissement, comme vous pouvez le voir dans la sortie générée). Le projet n'est pas installé dans mon dépôt local, de sorte qu'il n'est pas considéré comme un simple avertissement 🙁
  • Pour GoogleJuice: j'ai eu le message d'erreur "erreur: mauvaise utilisation de la" > "" parce que j'avais une grosse flèche en commentaire JavaDoc
  • Il sera peut-être utile pour quelqu'un: Vous pouvez facilement trouver tout ce incomplète des balises à l'Ide, par l'exécution de l'inspection Ctrl+Alt+Shift+i "Déclaration a JavaDoc problèmes"
  • Ce n'est pas maven, c'est la javadoc programme, qui a obtenu beaucoup plus stricte dans Java 8.
InformationsquelleAutor Sergio | 2013-04-08