Java - Un único .jar

 
Vista:

Un único .jar

Publicado por Lucas1024 (43 intervenciones) el 27/12/2006 20:36:34
¿Hay alguna forma sencilla, sin recurrir a programas de terceros de hacer un único jar?

No quiero que al distribuir mi aplicación tenga que enviar varios jar's.

Cuando genero el distribuíble con NetBeans, me genera un jar con un archivo de manifiesto en el cual indica los jar's de los que depende mi aplicación, pero esos jar's de los que depende los tiene por separado en una carpeta lib. Hay un archivo txt que se genera en el que dice que si quiero distribuir mi aplicación debo comprimir la carpeta en la cual está mi distribuíble, con todo y los jar's de los que dependo. Una solución bastante sencilla, con lo cual cada cliente, simplemente, tendría que descomprimir ese archivo y darle doble click en el jar, pero me gustaría poder evitarle ese trabajo al usuario dándole un único jar.

Si me dicen que es necesario conseguirme un programa de un tercero, pues agradecería que sea gratuito y que me den el link de descarga, para así no correr el riesgo de bajarme un virus. Si es de paga, mejor no lo mencionen, porque voy a sentirme frustrado por no poder comprarlo. Espero me entiendan.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Un único .jar

Publicado por chuidiang (950 intervenciones) el 28/12/2006 14:44:09
Hola:

Se me ocurren dos opciones. Una es usar one-jar (http://one-jar.sourceforge.net/) gratuita que te permite meter los otros jar dentro de tu jar y que lo encuentre todo.

Otra opcion es que en un directorio aparte desempaquetes todos los jar, los tuyos y de los que dependes. Puedes hacerlo con el comando jar que viene en java o con winzip. Luego, una vez desempaquetado todo junto, lo empaquetas en un solo jar todo. Por ejemplo, si tu jar es fichero.jar y usas el ojdbc14.jar para acceso a base de datos, puedes hacer esto

cd un directorio que tenga los dos jar y solo esos dos jar
jar xf fichero.jar // desempaqueta fichero.jar
jar xf ojdbc14.jar // desempaqueta ojdbc14.jar
jar cf todojunto.jar . // crea un jar con todo lo que hay en el directorio actual

Tendrás posiblemente que afinar un poco, quizás tengas que borrar los jar despues de desempaquetarlos para que no se metan a su vez en el nuevo jar. Tendrás que afinar el tema del fichero de manifiesto ...

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Un único .jar

Publicado por Lucas1024 (43 intervenciones) el 28/12/2006 15:47:39
Ya he usado one-jar, pero a lo mejor no lo usé bien, porque no hizo lo que quería. Voy a probarlo otra vez, pero lo hare con más calma.

La opción de desempaquetar los jar's, también la había leído, pero fueron tantas las críticas que se le hacían que nunca lo intenté. Debí probarlo en vez de confiar en las críticas ajenas.

Por otro lado, quisiera darte mis más sinceros agradecimientos, no sólo por esta respuesta, tu página, wikis, etc., me han servido de mucho. Yo vengo del mundo Microsoft, eres una especie de "El Guille" (www.elguille.info). Gracias por el conocimiento que compartes.

Lucas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar