He creado un archivo JAR. Ahora, creé otro programa Java. Quiero descomprimir ese archivo JAR en otro directorio, lo que significa que quiero hacer algo como descomprimir.¿Cómo escribir un programa Java que puede extraer un archivo JAR y almacenar sus datos en el directorio (ubicación) especificado?
Si me quedo jar -xf filename.jar
esto causa un error:
Exception in thread "main" java.io.IOException: Cannot run program "jar":
java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exec(Runtime.java:593)`
¿Esto no funciona para nadie más? Sigo lanzándome FileNotFoundExceptions por esto ..... – Flafla2
Mismo problema para mí @ Flafla2. – MiJyn
@lkjoel La razón por la que se lanza una excepción es porque esencialmente estás intentando escribir cosas como "dest/folder1/file1" antes de crear "dest/folder1". Para resolver esto, recomiendo iterar a través de la enumeración JarEntry de antemano, y convertirlo en una lista que está ordenada en getName(). Size() (de menor a mayor). De esta forma, creará todos los directorios necesarios antes de acceder a sus archivos/subdirectorios secundarios. – Destin