2008-09-25 9 views
20

Tengo un montón de complementos y características de Eclipse, que me gustaría construir como parte de una compilación nocturna (sin cabeza). He logrado hacer esto usando una configuración complicada que implica la especificación manual de las rutas a los archivos jar de Eclipse, copiando customTargets.xml, etc.Creación de complementos y características de Eclipse en la línea de comandos

¿Realmente no hay una solución más simple? ¿No hay una manera de simplemente señalar el site.xml de mi sitio de actualizaciones y decir "compilar"; es decir, el equivalente a hacer clic en "Generar todo" en el proyecto Actualizar sitio.

Respuesta

6

Dado que todas las respuestas a esta pregunta son todas de 3-5 años, creo que una actualización sería útil para otros.

Para aquellos que quieran agregar la construcción de plugins de Eclipse al proceso de CI, les recomendamos que consulten el Eclipse Tycho project. Esto es esencialmente un plugin de Maven que te permite envolver proyectos de eclipse dentro del proyecto Maven. Con esto usamos Atlassian Bamboo para construir nuestro plugin de Eclipse. Esto también nos permite usar el plugin Maven jarsigner para firmar nuestros archivos de complementos.

+1

Sí, también migramos a Tycho. Tycho parece haberse convertido en la opción preferida para crear plugins de Eclipse. La versión Eclipse Platform 4.3 (Kepler) también usa Tycho, por lo que yo entiendo. – JesperE

1

Puede que busque en buckminster y maven. Hay una curva de aprendizaje segura, pero parecen hacer bien su trabajo.

+0

Miré a Maven, pero parecía tener ideas muy estrictas sobre cómo deberían diseñarse los proyectos que no coincidían con el diseño típico de Eclipse.Buscaré en Buckminster. – JesperE

+0

Sí, la curva de aprendizaje es bastante empinada, pero es probable que no la use por completo. Definitivamente vale la pena por lo que hace. – jamesh

2

He estado luchando con este problema yo mismo. ¿Estás utilizando el script productBuild? Tal vez poner sus características en un producto podría ayudarlo.

Estoy construyendo sin cabeza en una configuración de producto. La única secuencia de comandos que personalicé fue agregar algunas tareas ant a customTargets.xml para obtener mis orígenes de SVN y hacer una pequeña limpieza en manifiestos JNLP después de la compilación, ya que estoy usando WebStart.

Luego solo necesita invocar antRunner en la caja productBuild.xml en el directorio scripts/productBuild (en el plugin pde-build).

+0

No, estoy usando los scripts/build.xml. Me sorprende que nadie haya hecho una interfaz gráfica de usuario de Eclipse para configurar una construcción sin cabeza, y que todavía tengo que juguetear con los archivos XML. – JesperE

+0

Quizás tengamos una buena oportunidad de tener un nuevo plugin de eclipse aquí. –

2

Echa un vistazo Ant4Eclipse. Lo he usado para analizar los archivos .classpath/.project de Eclipse para determinar dependencias de proyectos y classpaths. En combinación con Groovy Ant Task, he creado automáticamente varios proyectos en Ant utilizando los archivos del proyecto Eclipse para obtener información de compilación.

Existe una tarea buildPlugin, pero no la he usado personalmente.

2

Actualmente utilizamos PDE para crear automáticamente características y nuestro producto completo. Funciona bastante bien. Asegúrese de utilizar la secuencia de comandos correcta para la creación del producto o la creación de características. Eclipse Help on using PDE

EDITAR: Hemos migrado a Buckminster, que tiene una excelente interfaz de línea de comandos.

+0

Con algunas secuencias de comandos de Ruby de ayuda, fuimos con la compilación de PDE de todos modos. Ant4Eclipse fue prometedor pero con errores, y dado que la lista de correo parece estar fuera de servicio, no hubo mucha ayuda para tener allí. – JesperE

1

Estamos utilizando headlesseclipse, que se puede encontrar en Google Code:

http://code.google.com/p/headlesseclipse/

Funciona bastante bien, y pueden fácilmente automatizar la construcción de línea de comandos de plugins y características. Sin embargo, todavía no he encontrado una forma de automatizar la construcción del sitio de actualización a través de la línea de comando.

+1

HeadlessEclipse está oficialmente muerto, ya que los principales contribuyentes se han mudado a Maven. – JesperE

Cuestiones relacionadas