Ola,
Uns dizem que isso é possivel outros dizem que nao é. Mas quem fala a vendade?
Fiz uma calculadora que usa o look and feel substance
depois criei um jar pelo eclipse chamado ‘Calculdora.jar’ com o ‘substance.jar’ dentro mais precisamente dentro de
uma pasta chamada lib(‘lib/substance.jar’).
Meu arquivo manifest.mf esta assim
[color=blue]------------------------------------------------------------ Manifest-Version: 1.0
Class-Path: lib/substance.jar
Main-Class: br.com.Calculadora.Calculadora
com duas linhas de espaco(uns dizem que e sem espaco,
e outros que e com espaco)
quando eu tiro o espaco da erro tb
------------------------------------------------------------[/color]
E quando executo pelo prompt da esse erro:
exception in thread main java.lang.NoClassDefFoundError: org.jvnet.substance.skin.SubstanceBusinessLooAndFeel
Ja testei tudo do topico ‘Então você gostaria de distribuir suas aplicações?’
sem conta no google
A JVM não consegue enxergar um JAR dentro de outro JAR. Quando você escreve no seu manifest:
Class-Path: lib/substance.jar
ela acha que os diretórios no seu computador estão assim organizados:
seuprograma.jar
lib/
|
+---substance.jar
Portanto, para fazer seu programa funcionar, você tem 2 opções:
Você pode usar algo como o FATJAR, que “desmonta” o substance.jar e o inclui dentro do jar do seu programa;
Ou, como costumo fazer, simplesmente distribuir esses arquivos em subdiretórios fora do jar, até para poder trocar só o jar que interessa separadamente. É mais difícil de manter, mas pelo menos não violo certas licenças que podem acabar sendo violadas (alguns softwares da Sun, como o JavaMail, são assim) se eu ficasse desmontando arquivos jar e os remontando dentro do jar do meu programa.
[quote=thingol]A JVM não consegue enxergar um JAR dentro de outro JAR. Quando você escreve no seu manifest:
Class-Path: lib/substance.jar
ela acha que os diretórios no seu computador estão assim organizados:
seuprograma.jar
lib/
|
+---substance.jar
Portanto, para fazer seu programa funcionar, você tem 2 opções:
Você pode usar algo como o FATJAR, que “desmonta” o substance.jar e o inclui dentro do jar do seu programa;
Ou, como costumo fazer, simplesmente distribuir esses arquivos em subdiretórios fora do jar, até para poder trocar só o jar que interessa separadamente. É mais difícil de manter, mas pelo menos não violo certas licenças que podem acabar sendo violadas (alguns softwares da Sun, como o JavaMail, são assim) se eu ficasse desmontando arquivos jar e os remontando dentro do jar do meu programa.
[/quote]