2
respostas

Resolução para exceção: Caused by: javax.persistence.PersistenceException: [PersistenceUnit: livraria] Unable to build EntityManagerFactory

Exception in thread "main" java.lang.ExceptionInInitializerError
    at br.com.caelum.livraria.dao.PopulaBanco.main(PopulaBanco.java:17)
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: livraria] Unable to build EntityManagerFactory [...]
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException

Fala galera, tava com esse erro aí acima e navegando pelo forum encontrei dicas sobre o que pesquisar e solucionar o erro, vou deixar o que resolveu meu problema aqui pra futuros alunos :)

O comentário no fórum que eu parti pra solucionar o problema foi o do Otávio Prado neste link: https://cursos.alura.com.br/forum/topico-erro-ao-popular-o-banco-mysql-unable-to-build-entitymanagerfactory-83639

Depois de entender que o erro era por conta de não ter encontrado a classe jaxb fui no stackoverflow e encontrei esse comparsa com o mesmo erro, link> https://stackoverflow.com/questions/43574426/java-how-to-resolve-java-lang-noclassdeffounderror-javax-xml-bind-jaxbexceptio Neste link tem várias soluções, mas como estou utilizando o java 1.8 utilizei a solução em que recomendam baixar alguns jars e adiciona-las a lib.

Pra facilitar a vida de vocês, estes são os jars a serem adicionados: javax.activation-1.2.0.jar http://search.maven.org/remotecontent?filepath=com/sun/activation/javax.activation/1.2.0/javax.activation-1.2.0.jar

jaxb-api-2.3.0.jar http://search.maven.org/remotecontent?filepath=javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar

jaxb-core-2.3.0.jar http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-core/2.3.0/jaxb-core-2.3.0.jar

jaxb-impl-2.3.0.jar http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-impl/2.3.0/jaxb-impl-2.3.0.jar

Depois disso ainda estava dando um erro [talvez vocês já não tenham esse] por conta de uma versão antiga do mysql-connector utilizada no projeto. Erro: Unable to load authentication plugin 'caching_sha2_password'. Para resolver isso, basta baixar uma versão mais nova como o mysql-connector-java-5.1.49-bin.jar. link para download: https://dev.mysql.com/downloads/connector/j/5.1.html Solução também encontrada no stackoverflow: https://stackoverflow.com/questions/50387952/how-to-resolve-unable-to-load-authentication-plugin-caching-sha2-password-issu

Espero ter ajudado alguém.

“Continuous effort– not strength or intelligence – is the key to unlocking our potential." Winston Churchill

2 respostas

Oi Marcelo

Obrigado por compartilhar amigo.

Abraço!

Olá Marcelo, quero agradecer pela atitude de postar sua solução. Me ajudou demais!