Recuperar path pasta dentro jar e DEPOIS executar jar q fica dentro dessa pasta (Possível?)

Galera,

Tenho um jar e dentro dele tenho uma pasta. Preciso recuperar a string relativa ao path dessa pasta dentro do jar. Na verdade a questão e mais complicada, vamos ver se alguem consegue me ajudar.

meujar.jar
-------- arquivo1.xml
-------- arquivo2.txt
-------- pasta
---------------- sistema.jar
---------------- lib
------------------------ swt.jar
------------------------jax.jar

Seguinte, meu jar tem uma estrutura + ou - como essa. O que eu pretendo fazer é pegar o path no caso até a pasta. Depois precisarei executar esse sistema.jar a partir da minha aplicação. Minha intenção é depois de conseguir esse path, fazer algo como Runtime.exec(“java -jar c:/path_recebido/sistema.jar”).

Deu pra enteder? Será possível?

Valeussss!!!

Boa noite, não sei se entendi direito, mas vai a sugestão:

Acho que para dar certo você vai ter que fazer o seguinte, recuperar o path atual de onde seu jar principal está sendo executado, caso ele seja o jar que contém o main da sua aplicação, você pode usar esse método System.getProperty(“java.class.path”) para recuperar o caminho dele. A partir dai você pode criar um JarFile, passando a string recuperada do método anterior. Você vai precisar de um InputStream para carregar o jar que está dentro do jar principal, você pode fazer assim:

JarFile jarFile = new JarFile(System.getProperty(“java.class.path”));
InputStream inputStream = jarFile.getInputStream(“estrutura/interna/do/diretorio/para/jar.jar”);

A partir dai é só escrever o inputStream para um arquivo (pode ser na pasta temporária por exemplo: System.getProperty(“java.io.tmpdir”)) e carregar ele. Use as classes do pacote java.io para escrever o jar, ou, use as classes do pacote java.nio.channels, elas tambem são bem legais para trabalhar.

Acho que dessa forma pode dar certo !

Boa sorte !

O mais simples seria distribuir o sistema.jar fora do seu jar, dessa forma não precisaria colocar ele no temp como sugere o Fernando.