2009-11-03 51 views

Respuesta

52

This tutorial detalles de cómo actualizar un archivo jar

jar uf jar-file input-file(s) 

donde 'u' significa la actualización.

+3

En este comando: La opción u indica que quieres actualizar un archivo JAR existente. La opción f indica que el archivo JAR a actualizar se especifica en la línea de comando. jar-file es el archivo JAR existente que debe actualizarse. archivo de entrada es una lista delimitada por espacios de uno o más archivos que desea agregar al archivo Jar. – Nishantha

+1

Quiero actualizar un archivo de propiedades a una ubicación específica, idealmente debería haber dos parámetros 'fuente' y' destino'. Para mí 'input-file (s)', pero ¿dónde está 'source'? –

+0

@ShashiRanjan ¿Has encontrado la solución? – Dinesh

11

¿Desea hacerlo automática o manualmente? Si es manualmente, un archivo JAR es realmente solo un archivo ZIP, por lo que debería poder abrirlo con cualquier lector ZIP. (Es posible que deba cambiar primero la extensión.) Si desea actualizar el archivo JAR automáticamente a través de Eclipse, puede consultar el soporte Ant en Eclipse y ver el zip task.

6

Jar es un archivo, puede reemplazar un archivo en su propio administrador de archivos favorito (Total Commander, por ejemplo).

0

1) se puede extraer el archivo en una carpeta llamada

jarname.jar

y luego vuelva a colocar el archivo en la carpeta, práctico si está actualizando la clase mucho durante la depuración

2) se puede extraer el frasco reemplazar el archivo a continuación, el frasco de nuevo

3) Abrir el frasco con 7 zip y arrastrar y soltar y nuestra nueva clase para copiar el anterior

10

Simplemente arrastre y suelte su nuevo archivo de clase al JAR usando 7-Zip o Winzip. Incluso puede modificar un archivo JAR incluido en un archivo WAR utilizando el icono de la carpeta principal y hacer clic en Aceptar cuando 7zip detecta que el archivo interno se ha modificado

+0

Usando WinZip, debe abrirlo primero iniciando WinZip, luego arrastre el archivo jar a la ventana de WinZip. – awe

+1

7z en Windows no respeta mayúsculas/minúsculas, es decir, reemplazará tanto CA.class como Ca.class –

-1

Una alternativa es no reemplazar el archivo .class en el contenedor archivo. En su lugar, colóquelo en un nuevo archivo jar y asegúrese de que aparezca antes en su classpath que el archivo jar original.

No estoy seguro de que recomendaría esto para el software de producción pero para el desarrollo es rápido y fácil.

6
  1. Usa jar -xvf para extraer los archivos a un directorio.
  2. Realice los cambios y reemplace las clases.
  3. Use jar -cvf para crear un nuevo archivo jar.
2

Un archivo JAR es solo un .zip disfrazado. La carpeta comprimida contiene .class archivos.

Si estás en MacOS:

  1. Cambie el nombre del archivo que poseen la extensión '.zip'. p.ej. myJar.jar -> myJar.zip.
  2. Descomprime el '.zip' (haz doble clic en él).Aparecerá una nueva carpeta llamada 'myJar'
  3. Busque y reemplace el archivo .class con su nuevo archivo .class.
  4. Seleccione todos los contenidos de la carpeta 'myJar' y elija 'Comprimir x elementos'. NO postal la propia carpeta, sólo su CONTENIDO

Varios - Compilar un solo archivo .class, con referencia a un frasco original, en MacOS

  1. Hacer un archivo myClass.java , que contiene tu código.
  2. Terminal abierto de Spotlight.
  3. javac -classpath originalJar.jar myClass.java Esto creará su clase compilada llamada myClass.class.

A partir de aquí, siga los pasos anteriores. También puede usar Eclipse para compilarlo, simplemente haga referencia al contenedor original haciendo clic derecho en el proyecto, 'Build Path' -> 'Add External Archives'. Desde aquí, deberías poder compilarlo como un jar, y usar la técnica zip para recuperar la clase del jar.

0

propiedades de edición/archivo my_app.properties dentro de tarro:

"zip -u /var/opt/my-jar-with-dependencies.jar properties/my_app.properties". Básicamente "zip -u <source> <dest>", donde dest es relativo a la carpeta extraer extracto.

Cuestiones relacionadas