Empacotando hsqldb.jar junto com a aplicação

8 respostas
M

Gostaria de incluir junto com o .jar da minha aplicação o .jar do banco de dados “hsqldb.jar”. De forma que ao dar dois clicks no .jar da minha aplicação o pacote hsqldb.jar fosse carregado automaticamente.

ao inves de digitar:

java -classpath “.;hsqldb.jar” pacote.App

eu gostaria só de dar duplo click em MinhaApp.jar e esta carregar automaticamente “hsqldb.jar”, que esta dentro de MinhaApp.jar, e a aplicação funcionar perfeitamente sem ter que ficar configurando variavel de ambiente classpath.

8 Respostas

J

Colega,

De uma olhada nas propriedades que podem ser definidas no arquivo manifest que fica no seu jar. Existe uma propriedade “Class-Path” que pode ser definida para evitar o problema mencionado. Para incluir dentro da sua aplicacao o driver do hsqldb precisa descompactar o arquivo jar (do driver) e incluir os arquivos descompactados no jar da sua aplicacao.

Espero ter ajudado.

M

valeu cara funcionou perfeitamente! Eu nem precisei definir o Class-Path no manifest só descompactei os drivers do banco e empacotei junto com minha aplicação.

S

não acho esta a melhor solução… e se um dia você quiser usar uma versão mais atualizada… vai ter que apagar o que você descompactou e descompactar tudo de novo… muito mais simples apenas trocar um .jar

D

blz samuel , mas como faz isso
setando nova classpath entonce? Sera que é assim que funciona os programas como java Creator e JBuilder que possuem sua propria virtual machine?
Ja conseguiram encontrar algo na web que resolvesse esse problema?

M

É só vc deixar o .jar dos Drivers em um diretorio especifico! Como a sua aplicação vai estar sempre apontando para esse diretorio e a hierarquia de classes geralmente é a mesma! é só trocar a versão do driver!

S

Exatamente com o “maxwell_monteiro” disse.

K

mas isso nao garante q todo usuario q for executar a aplicação terá esses mesmos arquivos ensses mesmos diretorios :slight_smile:

S

É só você entregar a aplicação em um .zip com um bat para rodar… o cara só vai trocar os .jar se ficar fuçando na estrutura de diretórios, ai ele está pedindo para dar bosta. Nenhuma aplicação é “a prova” de usuário.

Criado 31 de maio de 2005
Ultima resposta 7 de jun. de 2005
Respostas 8
Participantes 5