tutorialspoint javadocs example docs all java gradle javadoc build.gradle

javadocs - Deshabilita todos los JavaDoc en Gradle



tags javadoc (3)

Así es como lo deshabilité, en mi archivo build.gradle que agregué:

tasks.withType(Javadoc).all { enabled = false } // non ascii characters make it crash

Actualización general, después de algunas investigaciones.
Quiero compilar mi proyecto ejecutando gradle 2.0 con gradle build en la consola. Me quedo atascado en la generación de JavaDoc. Estoy usando Java 8, precisamente jdk1.8.0_66 y jre1.8.0_66 . Ahora, cuando quiero compilar mi proyecto escribiendo gradle build en mi powershell, obtengo este error:

5 errors 10 warnings :my-subproject1:javadoc FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task '':my-subproject1:javadoc''. > Javadoc generation failed.

Un error de muestra y una advertencia de muestra:

C:/some/long/path/MyClass.java:37: error: @param name not found * @param appCode ^ C:/some/long/path/MyOtherClass.java:37: warning: no description for @param * @param appCode

Si deshabilito uno de mis subproyectos utilizando tasks.findByPath(":my-subproject:javadoc").enabled = false build.gradle tasks.findByPath(":my-subproject:javadoc").enabled = false en mi archivo build.gradle , build.gradle el mismo error para el siguiente subproyecto.
La investigación ha demostrado que no estoy solo con mi problema; Java 8 parece ser realmente estricto con el JavaDoc. Esto se debe a la nueva doclint for Javadoc . Encontrado en este sitio . También proporciona una solución para Maven y Gradle. Pero para mí no funciona, otra respuesta que recibí tampoco funciona. Mis intentos de resolverlo se ven así ahora mismo en mi build.gradle para este subproyecto:

//Solution by the second link allprojects { tasks.withType(Javadoc).all { enabled = false } } //Solution by the first link if (JavaVersion.current().isJava8Compatible()) { allprojects { tasks.withType(Javadoc) { options.addStringOption(''Xdoclint:none'', ''-quiet'') } } } dependencies{ compile project('':my-subproject1'') compile project('':my-subproject2'') compile project('':my-subproject3'') }

¿Alguien sabe cómo resolver este problema o hay otra solución?

Editar:

C:. | Root ├───build.gradle │ └───2.0 │ └───taskArtifacts ├───buildSrc │ ├───.gradle │ │ ├───2.0 │ │ │ └───taskArtifacts │ │ └───noVersion │ │ └───buildSrc │ ├───build │ │ ├───classes │ │ │ └───main │ │ ├───dependency-cache │ │ ├───libs │ │ └───tmp │ └───src │ └───main │ └───java │ └───com │ └───custom │ └───gradle │ └───util ├───my-subproject1 ├───my-subproject2 ├───my-subproject3 │ ├───my-sub-subproject │ ├───my-current-directory | Magic happens here │ │ ├───some.package.identifier │ │ │ ├───.clover │ │ │ ├───.settings │ │ │ ├───bin │ │ │ │ └───package │ │ │ │ └───subpackage │ │ │ └───buil.gradle | This should build my subproject

Solución: Póngalo en el archivo root build.gradle .


Si tiene un script de compilación de proyecto raíz, puede deshabilitar todas las tareas de los subproyectos por tipo. En su caso, por tipo Javadoc , como:

subprojects { tasks.withType(Javadoc).all { enabled = false } }


También me encontré con esto y, después de revisar el código fuente de Gradle, encontré una solución que funciona en Gradle 2.9.

En lugar de options.addStringOption(''Xdoclint:none'', ''-quiet'') intente options.addBooleanOption(''Xdoclint:none'', true) . Eso debería pasar correctamente la opción -Xdoclint:none a la invocación javadoc subyacente e ignorar los errores mientras se sigue produciendo la salida Javadoc. Hice esto directamente en la declaración de tarea javadoc, pero probablemente funcionaría con el método allprojects que allprojects anteriormente.