El enfoque más simple sería usar Apache Felix File Install. Funciona perfectamente con Equinox, solo necesita colocar los parámetros de configuración de la instalación de archivos en la configuración/config.ini. Sin embargo, tenga en cuenta que si inicia Equinox a través del iniciador JAR o vía binario, el directorio de trabajo sería el padre de la configuración/o los complementos/directorio.
extracto de nuestro proyecto config.ini:
# Start File Install itself
osgi.bundles=reference\:file\:[email protected]\:start
# The name of the directory to watch
felix.fileinstall.dir=./plugins
# A regular expression to be used to filter file names
# We have all bundles in plugins/ directory, this regexp
# forbids monitoring bundles that are started via osgi.bundles property
felix.fileinstall.filter=^(?!org.apache.felix.fileinstall|org.eclipse.osgi).*
# Determines if File Install waits felix.fileinstall.poll milliseconds before doing an initial scan or not.
felix.fileinstall.noInitialDelay=true
# Not sure why we have this...
felix.fileinstall.start.level=2
Otra posible solución sería utilizar Eclipse P2. Es mucho más avanzado y poderoso, aunque me resulta bastante difícil de usar.
Lo bueno es que si su aplicación es independiente del modo en que se aprovisionan los paquetes (y debería ser así), siempre puede cambiar de opinión más adelante.
Me gustaría utilizar la instalación de archivos Apache Felix, pero ¿cómo puedo poner en Eclipse config.ini la configuración "felix.fileinstall.dir"? Intenté felix.fileinstall.dir = .. \ plugins \ sin éxito ... ¿cómo puedo poner esta propiedad del sistema en un archivo de configuración? –
Estoy utilizando ahora la instalación de archivos con los parámetros de jvm a las propiedades del sistema. Es como -Deparemter = valor ... Está funcionando ahora. –
¿Has probado felix.fileinstall.dir =./Plugins? Si inicia Equinox a través del jar/binary del lanzador, el directorio de trabajo sería el padre de la configuración/directorio. Además de eso, debería funcionar bien. –