Planeo ejecutar un comando jar utilizando un jar incluido en otro jar.¿Cómo ejecuto un contenedor desde el interior de un contenedor?
El comando ocultar automáticamente un archivo JAR de Java utilizando un código similar a:
public void obfuscate()
{
try
{
String jre = "\"" + System.getProperty("java.home") + "\\bin\\javaw.exe" + "\"";
String jar = " -jar";
Runtime.getRuntime().exec(new String[] { jre, jar.trim(), "/lib/allatori.jar /lib/config.xml" });
}
catch (Exception e)
{
e.printStackTrace();
}
}
allatori.jar
archivo se incluye en mi archivo main.jar
como un recurso. config.xml
archivo también incluido.
¿Cómo puedo ejecutar mi comando para que ejecute el archivo jar incluido?
estructura de carpetas de main.jar:
- main.jar
|
|- main_class.class
|- lib/
|- allatori.jar
|- config.xml
|- jarToObfuscate.jar
* "probablemente tendrías que escribirlo desde cero". * Ver para p. Ej. [Fat Jar] (http://fjep.sourceforge.net/) que * "La opción One-JAR integra un Class-Loader especializado ... que maneja archivos jar dentro de un jar." * Y [JarClassLoader] (http: //www.jdotsoft.com/JarClassLoader.php) * "El cargador de clases para cargar clases, bibliotecas nativas y recursos del JAR superior y de JAR dentro del JAR superior." * solo algunos de los principales resultados en una búsqueda importante engine .. –
La forma más fácil probablemente sería crear una copia del jar programáticamente, luego ejecutarlo con Runtime.exec y eliminarlo después. ¿Qué piensa usted de eso? – Manitoba