Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Bug] Erro na hora de desserializar o json com jackson e ObjectMapper

Já apaguei todo o projeto, que antes fiz sozinho baseado na aula e depois repetindo passo a passo das instrutoras. Logo depois de apagar o primeiro projeto me deu problema no ObjectMapper mas depois de algum tempo consegui achar sobre recarregar a livraria Jackson no Maven. Agora tenho esta solução que me dá e pela minha pesquisa este erro se refere a uma classe que não existe. Falaram que as bibliotecas baixadas podiams estar em diferentes versões mas até aí eu acompanhei o raciocínio e depois bloqueou meu sistema pessoal kkkkkkkk Fui ver na biblioteca externa e realmente exite 1 dos arquivos que vieram em outra versão. Annotation 2.17.2, Jackson-core 2.17.2 e databind 2.18.1 Era exatamente o databind que era justamente aquele que não estava instalado e por isso não conseguia invocar a classe ObjectMapper. Segue alguns prints do erro e queria saber se é exatamente a questão das versões que está conflitando. Como posso resolver a situação? Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

E aí, Fábio! Beleza?

Cara, me parece que você tá bem no caminho com a sua análise sobre as versões do Jackson. É bem comum esse tipo de problema quando as bibliotecas não estão alinhadas.

No seu caso, o Jackson databind está com uma versão diferente das outras, e isso tá causando esse conflito. O método que tá dando erro simplesmente não existe nessa versão específica.

Pra resolver, você pode tentar:

Atualizar todas as bibliotecas Jackson para a mesma versão. Rebaixar a versão do databind (se não rolar atualizar tudo, tentar baixar a versão do databind para a mesma das outras pode funcionar. Mas cuidado pra não introduzir outros problemas, viu?)

Dá uma olhada na documentação oficial do Jackson, depois. Lá tem um guia bem legal sobre as compatibilidades entre as versões.

Se você testar essas soluções e não funcionar, manda um print do seu pom.xml pra gente dar uma olhada.

Eu alterei a versão no POM mas ela somente alterava a versão do databind, os demais permaneceram inalterados. Finalizei deixando o databind na mesma versão que as outras mas queria entender o por que aconteceu isso e qual seria a alternativa para alterar todos os arquivos pra versão mais recente.