2008-11-20 24 views
26

¿Qué sistema recomienda para implementar "actualizaciones automáticas" para alguna aplicación java (de escritorio)? También me gustaría tener la instalación y actualización de módulos/complementos. Piensa en Eclipse y Firefox."Actualizaciones automáticas" para aplicaciones Java (de escritorio)?

Conozco las cosas OSGi de Eclipse RCP, y también tengo algo de NetBeans RCP aquí. ¿Uno tiene que comprar totalmente en sus respectivas cosas RCP para usar su módulo y los sistemas de actualización automática?

¿Hay otras opciones?

Respuesta

18

¿Has mirado el Java Web Start? Comprueba si hay un módulo actualizado en el servidor y lo descarga solo si es necesario; de lo contrario, las cosas se almacenan en caché localmente en la PC del cliente y se inicia desde allí.

+1

AKA "Java Network Launch Protocol (JNLP), –

+0

No creo que Java Web Start sea la respuesta aquí. Asuma que se trata de una aplicación bastante amplia: cerca de un contenedor de aplicaciones como Eclipse (el IDE) , y al igual que Firefox es. – stolsvik

+0

¿Por qué el tamaño sería un problema? –

8

Web Start es ideal si tiene actualizaciones poco frecuentes y un buen ancho de banda.

Sin embargo, si necesita algo más. Trabajé en un proyecto donde teníamos actualizaciones frecuentes y un ancho de banda horrible. Rodamos nuestro propio servidor de clase; el código de inicio hablaría con el servidor para ver si se necesitaban actualizaciones por clase. De ser así, las clases modificadas se descargaron y la aplicación continuó normalmente.

En realidad, no fue terriblemente complicado, así que no tema enrollar el suyo si las herramientas existentes no funcionan.

+0

jardiff significa que solo las diferencias necesitan una descarga, no todo. Debería estar bien incluso con poco ancho de banda. –

+0

@tom, ¿tienes experiencia con esto? Me gustaría saber si vale la pena el esfuerzo. –

+0

davetron, ¿cómo puedo implementar el código de inicio dentro de un archivo jar? El escaneo de diferencias de clases no es un problema, pero el inicio es. No puedo sobrescribir el archivo ejecutable después de descargar la actualización. –

9

Creo que install4J ahora ofrece esta funcionalidad como parte de su constructor de instalación (http://www.ej-technologies.com/products/install4j/overview.html) Hemos estado queriendo verificarlo pero todavía no hemos tenido la oportunidad.

+0

Gracias, eso fue interesante. Posiblemente lo use para el "contenedor central", y p. Eclipse OSGi para complementos – stolsvik

1

Tome un vistazo a Equinox p2, que es probablemente lo que entiende por "cosas OSGi de Eclipse RCP" ... que sabemos, se hará necesidad de OSGi-ify su aplicación para utilizar p2 (que por lo menos medios que hacen su toda la aplicación, un gran paquete).

Cuestiones relacionadas