
Plugin Gradle per un provisioning rapido e riproducibile dell'IDE Eclipse come artefatto di build, con supporto per build OSGi, p2 e RCP.
Goomph: IDE come artefatto di buildAnche plugin per lavorare con SWT, OSGi, p2 e Eclipse RCP
È possibile avere molte installazioni dell'IDE Eclipse che condividono un insieme comune di artefatti installati, chiamato "bundlepool". Ciò significa che è veloce ed efficiente ottenere un IDE costruito su misura per ogni progetto, preconfigurato con tutti i plugin e le impostazioni appropriate per il progetto in questione.
Quando esegui gradlew ide, esso costruisce e scarica un IDE in build/oomphIde con solo le funzionalità di cui hai bisogno. Richiede circa 15 secondi e 1 MB di spazio su disco una volta che tutti gli artefatti comuni sono stati memorizzati nella cache in ~/.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
}
}
Vedi il javadoc del plugin per un avvio rapido, e HOW_TO_AUTOMATE_IDE.md per esempi e dettagli più approfonditi.
Si scopre che gli strumenti necessari per implementare "IDE come artefatto di build" sono gli stessi strumenti necessari per manipolare i file di progetto di Eclipse, e anche per costruire plugin Eclipse e applicazioni RCP in primo luogo. Questo è l'altro lato di Goomph. Per un progetto di esempio, vedi l'intervento su Gradle e Eclipse RCP.
Software Eclipse reale costruito con Goomph:
Di seguito è riportato un indice delle capacità di Goomph, insieme ai collegamenti al javadoc dove puoi trovare esempi di utilizzo.
com.diffplug.eclipse File di progetto Eclipse e artefatti maven centrali con mapping delle versioni Eclipse.apt corregge il progetto Eclipse per funzionare con l'elaborazione delle annotazioni di Gradle.mavencentral rende facile aggiungere jar di dipendenza da una release Eclipse.buildproperties usa build.properties per controllare una build Gradle e corregge il classpath del progetto Eclipse per includere le risorse binarie specificate in build.properties.excludebuildfolder esclude la cartella build di Gradle dall'indicizzazione delle risorse di Eclipse.projectdeps risolve un problema intermittente in cui le dipendenze da altri progetti all'interno del workspace non vengono sempre risolte correttamente in Eclipse.resourcefilters aggiunge filtri delle risorse al progetto Eclipse.com.diffplug.osgi Plugin per lavorare con OSGi.bndmanifest genera un manifest usando puramente bnd e lo produce per il consumo dell'IDE.equinoxlaunch può configurare ed eseguire applicazioni equinox come parte della build, ad esempio un generatore di codice.OsgiExecable rende facile eseguire un blocco di codice all'interno di un contenitore OSGi e ottenere il risultato dall'esterno del contenitore.com.diffplug.p2 Plugin per manipolare dati p2.