Skip to content

Instantly share code, notes, and snippets.

@claudio27
Last active November 2, 2016 14:11
Show Gist options
  • Select an option

  • Save claudio27/db1fc98a74d2435cbb070c1d7d5165f8 to your computer and use it in GitHub Desktop.

Select an option

Save claudio27/db1fc98a74d2435cbb070c1d7d5165f8 to your computer and use it in GitHub Desktop.
Cómo crear un archivo *.jar a mano

Comandos

Archivos repositorio, repositorio2

javac -cp ./src/main/java ./src/main/java/com/exec/one/*.java -d ./out/  

jar cvfm ExecutableOne.jar ./src/main/resources/META-INF/MANIFEST.MF -C ./out/ .	

javac -cp ./src/main/java ./src/main/java/com/exec/one/*.java ./src/main/java/com/exec/one/**/*.java -d ./out/

jar cvfm ExecutableOne.jar ./src/main/resources/META-INF/MANIFEST.MF -C ./out/ .

Fat jar

javac -cp ./src/main/java ./src/main/java/com/exec/two/*.java -d ./out/ -classpath ./libs/ExecutableOne.jar

Antes descomprimir *.jar anterior dentro de la carpeta out

$cp libs/ExecutableOne.jar ./out/
$cd ./out
$tar xf ExecutableOne.jar
$rm ExecutableOne.jar

Ahora crear el jar

jar cvfm ExecutableTwo.jar ./src/main/resources/META-INF/MANIFEST.FM -C./out/ .

Ejemplo archivo MANIFEST.MF

Manifest-Version: 1.0
Created-By: __nombre__
Class-Path: .
Main-Class: com.exec.one.Main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment