Jar + JDBC

5 respostas
java
G

Olá, tenho a seguinte estrutura de diretorios
app
—bin/*.class
—src/java
—lib/
.jar

Estou tentando criar um .jar na minha app mas esta ocorrendo o erro java.lang.Exception: org.postgresql.Driver. Porem a lib jdbc encontra-se no diretorio lib. Para gerar o app.jar estou executando os seguintes comandos

javac -d bin -cp lib/postgresql-9.4-1206-jdbc42.jar src/Conect.java
jar -cfm core/App.jar manifest.mf lib/postgresql-9.4-1206-jdbc42.jar -C bin/ .

E o arquivo manifest.mf possui o seguinte conteudo

Manifest-Version: 1.0
Main-Class: Conect
Class-Path: lib/postgresql-9.4-1206-jdbc42.jar

Alguem poderia me dizer o porque minha app esta exibindo esse erro ao tentar executa-la?

Obrigado.

5 Respostas

staroski

A pasta lib está na mesma pasta que o seu JAR?

G

Olá amigo. Não. A app.jar esta sendo gerada em um diretorio core, a lib do jdbc esta em outro liretorio (lib), e as classes no diretorio bin.

staroski

Seu MANIFEST.MF espera que exista um diretorio lib contendo o arquivo postgresql-9.4-1206-jdbc42.jar, veja:

Class-Path: lib/postgresql-9.4-1206-jdbc42.jar

G

Existe. Eu descompactei o arquivo app.jar e existe a seguinte hierarquia de diretorios:

META-INF
    \__MANIFEST.MF
banco
    \__ConnectionDB.class
lib
    \__postgresql-9.4-1206-jdbc42.jar
staroski

A pasta lib não deve estar dentro do JAR.

Criado 11 de setembro de 2017
Ultima resposta 12 de set. de 2017
Respostas 5
Participantes 2