
Plugin de Gradle para el aprovisionamiento rápido y reproducible del IDE de Eclipse como artefacto de compilación, con soporte para compilaciones OSGi, p2 y RCP.
Goomph: IDE como artefacto de compilaciónTambién complementos para trabajar con SWT, OSGi, p2 y Eclipse RCP
Es posible que muchas instalaciones del IDE de Eclipse compartan un conjunto común de artefactos instalados, llamado "bundlepool". Esto significa que es rápido y eficiente obtener un IDE hecho a medida para cada proyecto, preconfigurado con todos los complementos y ajustes apropiados para el proyecto en cuestión.
Cuando ejecutas gradlew ide, construye y descarga un IDE en build/oomphIde con solo las funciones que necesitas. Tarda ~15 segundos y 1MB de espacio en disco una vez que todos los artefactos comunes se han almacenado en caché en ~/.goomph.
apply plugin: 'com.diffplug.oomph.ide'
oomphIde {
repoEclipseLatest()
jdt {}
eclipseIni {
vmargs('-Xmx2g') // IDE can have up to 2 gigs of RAM
}
style {
classicTheme() // oldschool cool
niceText() // with nice fonts and visible whitespace
}
}
Consulta el javadoc del complemento para un inicio rápido, y HOW_TO_AUTOMATE_IDE.md para ejemplos y detalles en mayor profundidad.
Resulta que las herramientas necesarias para implementar "IDE como artefacto de compilación" son las mismas que se necesitan para manipular los archivos de proyecto de eclipse, y también para construir complementos de Eclipse y aplicaciones RCP en primer lugar. Ese es el otro lado de Goomph. Para un proyecto de ejemplo, consulta la charla Gradle y Eclipse RCP.
Software de Eclipse del mundo real construido con Goomph:
A continuación se muestra un índice de las capacidades de Goomph, junto con enlaces al javadoc donde puedes encontrar ejemplos de uso.
com.diffplug.eclipse Archivos de proyecto de Eclipse y artefactos de maven central con mapeo de versiones de eclipse.apt corrige el proyecto de eclipse para que funcione con el procesamiento de anotaciones de Gradle.mavencentral facilita la adición de jars de dependencias desde una versión de eclipse.buildproperties utiliza build.properties para controlar una compilación de gradle, y corrige el classpath del proyecto de eclipse para incluir los recursos binarios especificados en build.properties.excludebuildfolder excluye la carpeta build de gradle de la indexación de recursos de Eclipse.projectdeps corrige un problema intermitente en el que las dependencias de otros proyectos dentro del workspace no siempre se resuelven correctamente dentro de Eclipse.resourcefilters añade filtros de recursos al proyecto de eclipse.com.diffplug.osgi Complementos para trabajar con OSGi.bndmanifest genera un manifiesto usando únicamente bnd, y lo emite para su consumo por el IDE.equinoxlaunch puede configurar y ejecutar aplicaciones equinox como parte de la compilación, como un generador de código.OsgiExecable facilita la ejecución de un fragmento de código dentro de un contenedor OSGi y la obtención del resultado desde fuera del contenedor.com.diffplug.p2 A y complementos para manipular datos p2.