java - tutorial - hormiga junit error de construcción dentro de eclipse
ant build (6)
De acuerdo con la documentación here y here , la tarea Ant, <JUnitReport>
requiere Apache Xalan 2.4.1+ o Xalan XSLT. Se pueden obtener de la biblioteca externa, xalan.jar . Asegúrate de tener estas dependencias.
Espero que haya algunas personas que hayan visto y tengan una solución para el problema que estoy teniendo ahora con el script ant. Estoy utilizando un script de ant para compilar mis códigos java en eclipse pero eclipse me sigue dando estos errores
[junitreport] Processing E:/workspace/DataOrchestrationDevelopment/DataOrchestration/Logs/jsreports/junit/html/TESTS-TestSuites.xml to C:/Users/u0160235/AppData/Local/Temp/null1503375679
[junitreport] Loading stylesheet jar:file:/E:/software/apache/apache-ant-1.8.2/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
[junitreport] : Error! The first argument to the non-static Java function ''replace'' is not a valid object reference.
[junitreport] : Error! Cannot convert data-type ''void'' to ''reference''.
[junitreport] : Fatal Error! Could not compile stylesheet
[junitreport] Failed to process E:/workspace/DataOrchestrationDevelopment/DataOrchestration/Logs/jsreports/junit/html/TESTS-TestSuites.xml
BUILD FAILED
E:/workspace/DataOrchestrationDevelopment/DataOrchestration/ant/developerbuild.xml:124: The following error occurred while executing this line:
E:/workspace/DataOrchestrationDevelopment/DataOrchestration/ant/QunitAntScript.xml:20: Errors while applying transformations: Fatal error during transformation
Mis ajustes de entorno:
- Windows 7
- Eclipse 3.6 RC2 32 bit
- JDK 1.6 actualizacion 32 32 bit
- Ant 1.7.2
- Junit 4 (dentro de eclipse): en la carpeta de mi proyecto jar tengo junit-dep-4.8.2.jar
Una cosa a mencionar es que si compilo mis códigos fuera de eclipse usando el mismo script Ant, todo funciona bien, pero no funciona dentro de Eclipse. Intenté buscar en Google los errores que aparecen arriba de la hoja de estilo anterior, pero eso no me ayudó mucho. Mi conjetura es que de alguna manera, dentro del eclipse se está utilizando una versión diferente de junit, pero podría estar equivocado.
Experimenté el mismo problema de hojas de estilo en Eclipse utilizando el siguiente entorno:
- Windows 7 x64
- Eclipse 3.7.2 (SR2) de 32 bits
- JDK 1.6.0_32 de 32 bits
- Ant 1.7.2 (de Eclipse) o 1.7.4 (de Apache, actual)
- Junit 4.8.1 (dependencia del proyecto)
Mi compilación tiene éxito al usar JDK 1.6.0_31, por lo que parece que el problema de la hoja de estilo es un error de Ant o Java introducido con el lanzamiento de Java 6 build 32. No pude encontrar ningún informe en el sistema Bugzilla de Apache. Si ayuda a alguien, estas son las correcciones de errores incluidas en la compilación 32: http://www.oracle.com/technetwork/java/javase/2col/6u32bugfixes-1579554.html
Mi solución actual es usar Java 6 JDK build 31.
Actualización: solución para usar un JDK más nuevo
Las fallas de Ant desde Eclipse comenzaron con un defecto introducido en Java 6u32 y Java7u4. La saga se reporta en Eclipse Bug # 384757 , incluida una solución que le permite usar JDK más nuevos.
- Descargue los complementos
org.apache.xalan
yorg.apache.xml.serializer
del proyecto Eclipse Orbit -
java.ext.dirs
en un directorio listado en la propiedad Javajava.ext.dirs
Utilizo los siguientes directorios porque están definidos de forma predeterminada e independientes de la versión JDK:
- En Windows:
C:/Windows/Sun/Java/lib/ext
- En Mac:
/Users/$USER/Library/Java/Extensions
El problema de raíz se informó a Oracle, pero el error ya no está en su base de datos de errores . No soy optimista, nunca será arreglado.
Actualización: Apache solucionó el problema en Ant
Apache ha solucionado el problema de la raíz; puede estar disponible en la versión Ant 1.9.0 ( Apache Bug # 54641 ).
Actualización: Ant 1.9.1 programada para Eclipse 4.4
Como mencionó @OliBlogger, Apache solucionó el problema de raíz en Ant 1.9.1. Eclipse planea actualizar a Ant 1.9.1 en Eclipse 4.4 (quizás antes, el sistema de errores de Eclipse aún no tiene hitos 4.3.x).
Actualización: Solucionado en Eclipse 4.4
Confirmé que mi compilación ahora tiene éxito usando Java 7 JDK compilación 67 y Ant 1.9.2 distribuida con Eclipse 4.4.1 (Windows 7) sin usar la solución alternativa del complemento Orbit.
He intentado usar algunos ajustes JRE / JDK diferentes (todos los 1.6 y 1.7) con problemas en cada uno.
Obviamente, no es una solución perfecta, pero parece que no me encuentro con estos problemas si el informe JUnit está "sin procesar" en el archivo de compilación, no está envuelto en un objetivo.
Una solución temporal deficiente, obviamente, en cuanto a que los objetivos son un aspecto importante de Ant, pero a veces para informar sobre objetivos / dependencias de compilación no son tan críticos. Todavía no es un gran problema para mí porque estoy ejecutando estos informes de una manera única y no como parte de una compilación.
Espero que ayude a alguien, pero también espero que esto se solucione correctamente.
Intenta ir a Preferences->Ant->Runtime
y configura Ant Home ... allí en tu carpeta de instalación de ant. Por defecto, eclipse viene con y usa una hormiga contribuida como complemento.
También puede agregar allí tarros adicionales, carpetas si es necesario.
Se dijo en https://bugs.eclipse.org/bugs/show_bug.cgi?id=384757#c18 que la solución para esto estaba en Ant 1.9, pero desafortunadamente parece estar descartada para 1.9.1 ahora. Así que mientras tanto, esto funcionó para mí.
Puede usar las hojas de estilo de http://svn.apache.org/viewvc?view=revision&revision=1453414 . Luego agregue "stledir" a la etiqueta de informe. Ejemplo: styledir="c:/utils"
Tuve un problema similar Tuve esta combinación para mi proyecto:
Java: jdk1.6.0_45 Ant: eclipse / plugins / org.apache.ant_1.8.2.v20120109-1030 Compilador de Java: 1.6
Cambié mi java a JRE6 y funcionó absolutamente bien