Olá!
O netbeans me informa o erro abaixo
SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
SLF4J: See SLF4J Error Codes for further details.
Exception in thread “main” java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
Não consigo solucionar este problema
A classe segue abaixo;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
/*
- Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
- Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
/**
*
Classe para gerar a tabela no BD segue abaixo;
/*
- Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
- Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
/**
*
-
@author jairo
*/
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class GeraTabelaBancoDados {
public static void main(String args[]){
AnnotationConfiguration cfg = new AnnotationConfiguration();
cfg.addAnnotatedClass(Pessoas.class);
SchemaExport se = new SchemaExport(cfg);
se.create(true, true);
}
}
Você está com as dependências do SLF4J ?
Olá staroski!
Estou com o jar slf4j-api-1.5.8.jar no netbeans
Veja se vc tem essa classe no seu .jar:
org/slf4j/impl/StaticLoggerBinder
Se não tiver, provavelmente vc esta com o .jar errado.
Dúvida minha, vc não esta utilizando o maven ou gradle?
Olá d3z4013!
tenho na minha biblioteca netbeans o slf4j-api-1.5.8.jar
Será que esta referenciado de maneira correta? Durante a codificação o import consegue encontrar a classe dentro do .jar? Se estiver, vc vai conseguir utilizar o autocomplete, vai conseguir clicar em cima de um método dessa classe segurando o CTRL e ser direcionado à classe dentro do .jar.
Consegue executar esses passos?
Olá!
Sim ele vai para o jar, conforme imagem abaixo:
Na imagem não mostra a classe no classpath.
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
/*
- Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
- Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
/**
*
-
@author jairo
*/
@Entity
@Table(name = “pessoas”)
public class Pessoas implements Serializable {
@Id
@SequenceGenerator(name=“generator_pessoa”, sequenceName = “pessoas_pescodigo_seq”)
@GeneratedValue(generator = “generator_pessoa”)
private int pesCodigo;
@Column(length = 100, nullable = false)
private String pesNome;
@Column
private String pesEmail;
@Column
private String pesFone;
@Column
private String pesCpf;
@Column
private String pesCidade;
/**
-
@return the pesCodigo
*/
public int getPesCodigo() {
return pesCodigo;
}
/**
-
@param pesCodigo the pesCodigo to set
*/
public void setPesCodigo(int pesCodigo) {
this.pesCodigo = pesCodigo;
}
/**
-
@return the pesNome
*/
public String getPesNome() {
return pesNome;
}
/**
-
@param pesNome the pesNome to set
*/
public void setPesNome(String pesNome) {
this.pesNome = pesNome;
}
/**
-
@return the pesEmail
*/
public String getPesEmail() {
return pesEmail;
}
/**
-
@param pesEmail the pesEmail to set
*/
public void setPesEmail(String pesEmail) {
this.pesEmail = pesEmail;
}
/**
-
@return the pesFone
*/
public String getPesFone() {
return pesFone;
}
/**
-
@param pesFone the pesFone to set
*/
public void setPesFone(String pesFone) {
this.pesFone = pesFone;
}
/**
-
@return the pesCpf
*/
public String getPesCpf() {
return pesCpf;
}
/**
-
@param pesCpf the pesCpf to set
*/
public void setPesCpf(String pesCpf) {
this.pesCpf = pesCpf;
}
/**
-
@return the pesCidade
*/
public String getPesCidade() {
return pesCidade;
}
/**
-
@param pesCidade the pesCidade to set
*/
public void setPesCidade(String pesCidade) {
this.pesCidade = pesCidade;
}
}
import javax.swing.;
import org.hibernate.;
import org.hibernate.cfg.AnnotationConfiguration;
/*
- Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
- Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
/**
*
-
@author jairo
*/
public class GravaPessoa {
public static void main(String[] args){
try{
AnnotationConfiguration cfg = new AnnotationConfiguration();
cfg.addAnnotatedClass(Pessoas.class);
SessionFactory fabrica = cfg.buildSessionFactory();
Session sessao = fabrica.openSession();
Pessoas pessoas = new Pessoas();
pessoas.setPesNome("Jairo Dione");
pessoas.setPesFone("863333333");
pessoas.setPesCpf("111111111");
pessoas.setPesEmail("jairodione@yahoo.com.br");
Transaction trPessoa = sessao.beginTransaction();
sessao.save(pessoas);
trPessoa.commit();
sessao.close();
}catch(Exception erro){
JOptionPane.showMessageDialog(null, "Erro de Inseção: "+erro);
}
}
}
Amigo, procure entender o que é o “classpath”, que você vai poder conferir se algo está faltando.
Do meu conhecimento não está faltando biblioteca, todas estão no diretório
Sugestões:
- Abra a biblioteca e confira se tem a classe no package correto.
- Também, tente estanciar a classe, como teste, no início da execução do seu programa.
- Debugando/depurando seu programa, tente fazer um
Class.forName(
"org.slf4j.impl.StaticLoggerBinder"
);
e veja se é econtrada.
Se não encontrar eh pq seu programa, por algum motivo, está sendo executado sem ter o jar no classpath.