Pregunta

Tengo un (sistema de retransmisión de JMS) sencilla proyecto maven2 java. Después hemos lanzado la primera versión, se encontró que pasamos más tiempo configurando experto que en realidad la codificación.

En la próxima versión que queríamos para limpiar el proceso de construcción y alguien sugirió la migración a constructor. Así que tenía la tarea de hacer precisamente eso.

Buildr configuración I (1.3.4) de acuerdo con la documentación en su página web. Y después de la raíz del proyecto que he escrito el comando Buildr y luego informó Buildr para crear el fichero de construcción basado en mi pom.xml. Que procesan bien y compilado todo el código. Todo era salsa hasta Buildr empezó a correr las pruebas. Aquí es que la salida:

Test framework error: taskdef class org.apache.tools.ant.taskdefs.optional.junit.JUnitTask cannot be found

Es evidente que la clase especificada no está en mi ruta de clase. Sin embargo, la documentación Buildr dice que todos los elementos necesarios necesarios para las pruebas básicas se incluyen. Su documentación no dice que ellos necesitan ninguna bibliotecas específicas para la hormiga o una versión de la hormiga. A pesar de que tiene instalada 1.7.0 hormiga (no incluido en mi ruta de clase sin embargo).

¿Alguien ha visto esto antes?


Actualizar

He localizado el famoso frasco de hormigas opcional en el repositorio de Maven. Incluida la de mis opciones test.with no resuelve el problema.

Al ejecutar el comando Buildr con --trace da esta información adicional ...

Tests failed!
/pathtoruby/buildr-1.3.4/lib/buildr/core/test.rb:455:in `run_tests'
/pathtoruby/buildr-1.3.4/lib/buildr/core/test.rb:199:in `initialize'
¿Fue útil?

Solución

Encontrado el problema ... Al parecer hay un hormiguero junit.jar que se necesita, pero por alguna razón en mi repositorio local que era propiedad de la raíz y no a mi cuenta de usuario local (sistema OSX). Por lo tanto, no era accesible a Buildr. He eliminado los artículos de mi repositorio local y volvió a ejecutar Buildr (que descargarse los artículos necesarios).


Actualizar

También esto causó algunas otras cuestiones. Parece que algunos otros artículos en mi repositorio local tenían permisos extraños. Acabé mi repositorio archivar y dejar experto reconstruirlo. Esto resuelve todos mis problemas. Ahora tengo un fichero de construcción agradable que es de 25 líneas de código en comparación con mi pom.xml anterior que fue de más de 100 líneas.

Otros consejos

Se obtiene que el error debido JUnitTask no está en la ruta de clase. No estoy muy familiarizado con Buildr por lo que no puede decir si es necesario para que especifique los frascos JUnit o no, pero si Buildr utiliza la ruta de clase del sistema, trate de añadir JUnit a ella y ver qué pasa.

Una vez que haya confirmado su construye funcionará con JUnit han pirateado la ruta de clase, a continuación, puede intentar variar su configuración hasta que se ejecuta como se esperaba, o dejarlo como está.

Se puede publicar la referencia a la parte correspondiente de la documentación? No vi nada (en mi muy breve lectura del sitio) que dice que los artículos requeridos están incluidos.

¿Es posible que usted no haya descargado todas las gemas? Si ejecuta "actualización joya --system" para actualizar Ruby, a continuación, "actualización joya Buildr" se puede asegurar que las dependencias requeridas han sido instalados.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top