Me interesa saber cómo distribuir una aplicación Java que tenga muchas dependencias (especificada en un pom.xml en Maven).Creación de una aplicación Java que descarga sus propias dependencias
Obviamente, sería posible empacar todo en un gran archivo .jar. Sin embargo, eso parece un desperdicio, ya que una actualización de la aplicación también requeriría enviar una nueva copia de todas las dependencias.
Así que estoy buscando una manera de distribuir la aplicación que hace lo siguiente:
- incluye sólo el uso de la base en el archivo .jar principal
- Descargas dependencias según sea necesario cuando el archivo .jar se ejecuta
- mantiene copias de las dependencias a nivel local, por lo que si se distribuye una actualización de la aplicación de las dependencias no necesitan ser descargada de nuevo
Cuál es la mejor wa y de lograr esto?
Antes de que alguien sugiera eso, OSGi parece ser una exageración aquí, pero creo que tiene estas buenas características de descarga y actualización de paquetes sobre la marcha, incluso sin reiniciar. –
Esto no lo ayuda en este momento, pero pensé que mencionaría que hay trabajo en curso para resolver este problema en el nivel de JDK. Se llama Project Jigsaw y actualmente está programado para incluirse en JDK 8. Obtenga más información al respecto aquí: http://openjdk.java.net/projects/jigsaw/ – ivantod
@ivantod: Tres años después. JDK 8 está fuera. Sin Jigsaw todavía. Aún en la hoja de ruta, sin embargo. – Thilo