2011-12-05 10 views
6

¿Es posible tratar las advertencias como errores al usar Javadoc? En particular, estoy llamando Javadoc desde Ant y tengo failonerror="true" configurado en mi tarea <javadoc>, pero parece que no puedo activar esto. Aunque javadoc está generando advertencias, sigo obteniendo BUILD SUCCESSFUL con un código de salida 0 cuando Ant finalice.Javadoc: ¿trata las advertencias como errores?

Esperaría poder agregar algo al atributo additionalparam de la tarea <javadoc> para forzar un error para las advertencias de Javadoc.

+1

Existe una diferencia entre 'failonerror' y' failonwarnings' (esta última no existe). –

Respuesta

0

No conozco un parámetro de JavaDoc, recomendaría utilizar una herramienta como checkstyle en su compilación de hormigas para cosas como esta. Puede configurarlo para que falle en las advertencias de Javadoc.

+0

Vaya uno mejor e integre su compilación con Sonar http://www.sonarsource.org/ –

6

Sé que esto es antiguo, pero aún podría ser útil para alguien que busca la respuesta como yo. Si no funciona, cambie el

<contains text="warnings"/> 

al texto que ve con su salida.

<target name="javadoc"> 
<delete dir="${jDocDirectory}"/> 
<mkdir dir="${jDocDirectory}"/> 
<record name="javadocLog" action="start"/> 
<javadoc (settings, blah blah) /> 
<record name="javadocLog" action="stop"/> 
     <condition property="javadoc.warnings"> 
      <isfileselected file="javadocLog"> 
       <contains text="warnings"/> 
      </isfileselected> 
     </condition> 
     <fail if="javadoc.warnings">Javadoc warnings!</fail> 
</target> 

edición: Si usted tiene una advertencia, esto no funcionará, para fijar TODAS las advertencias que hay que cambiar esta situación:

<contains text="warnings"/> 
+0

Esto parece interesante, aunque no funciona para mí. Obtengo un archivo de texto en blanco de una línea como resultado de la operación de grabación. Parece que no siempre está descargando el resultado al archivo, por lo que cuando lo lea, es posible que obtenga un archivo realmente corto en lugar de un archivo que contenga los registros que estaba esperando. De vuelta al tablero de dibujo, supongo. – Trejkaz

+0

Su problema podría ser que solo tiene 1 advertencia y, por lo tanto, el archivo contiene "advertencia" en lugar de "advertencias". Estábamos recibiendo una advertencia que no se podía ocultar/corregir (utilizando una clase que se puede eliminar de la API). Si tuviera que cambiar el Eso podría ayudar. Esto ha funcionado para nosotros desde mayo, todavía no ha tenido ningún problema. – Knoxie

+0

Estoy usando "advertencia", pero el archivo está completamente vacío, por lo que no coincidirá. Ahora estoy tratando de averiguar por qué no funciona. Los documentos dicen que solo puede sonrojarse cuando un objetivo está terminado, así que traté de usar en un objetivo vacío para forzarlo, pero eso tampoco pareció hacerlo. – Trejkaz

Cuestiones relacionadas