1
resposta

[Bug] Erro

Executo o programa e quando coloco o nome da serie aparece esse erro:

Exception in thread "main" java.lang.IllegalStateException: java.lang.NoSuchMethodError: 'void com.fasterxml.jackson.core.util.BufferRecycler.releaseToPool()' at org.springframework.boot.SpringApplication.handleRunFailure(SpringApplication.java:825) at org.springframework.boot.SpringApplication.run(SpringApplication.java:344) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1354) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343) at br.com.alura.screenmatch.ScreenmatchApplication.main(ScreenmatchApplication.java:16) Caused by: java.lang.NoSuchMethodError: 'void com.fasterxml.jackson.core.util.BufferRecycler.releaseToPool()' at com.fasterxml.jackson.databind.ObjectWriter.writeValueAsBytes(ObjectWriter.java:1172) at retrofit2.converter.jackson.JacksonRequestBodyConverter.convert(JacksonRequestBodyConverter.java:35) at retrofit2.converter.jackson.JacksonRequestBodyConverter.convert(JacksonRequestBodyConverter.java:24) at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:429) at retrofit2.RequestFactory.create(RequestFactory.java:129) at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:208) at retrofit2.OkHttpCall.getRawCall(OkHttpCall.java:107) at retrofit2.OkHttpCall.execute(OkHttpCall.java:197) at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:46) at io.reactivex.Observable.subscribe(Observable.java:10151) at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:35) at io.reactivex.Observable.subscribe(Observable.java:10151) at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35) at io.reactivex.Single.subscribe(Single.java:2517) at io.reactivex.Single.blockingGet(Single.java:2001) at com.theokanning.openai.service.OpenAiService.execute(OpenAiService.java:317) at com.theokanning.openai.service.OpenAiService.createCompletion(OpenAiService.java:121) at br.com.alura.screenmatch.service.ConsultaChatGPT.obterTraducao(ConsultaChatGPT.java:17) at br.com.alura.screenmatch.model.Serie.(Serie.java:43) at br.com.alura.screenmatch.principal.Principal.buscarSerieWeb(Principal.java:62) at br.com.alura.screenmatch.principal.Principal.exibeMenu(Principal.java:43) at br.com.alura.screenmatch.ScreenmatchApplication.run(ScreenmatchApplication.java:22) at org.springframework.boot.SpringApplication.lambda$callRunner$5(SpringApplication.java:790) at org.springframework.util.function.ThrowingConsumer$1.acceptWithException(ThrowingConsumer.java:83) at org.springframework.util.function.ThrowingConsumer.accept(ThrowingConsumer.java:60) at org.springframework.util.function.ThrowingConsumer$1.accept(ThrowingConsumer.java:88) at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798) at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:789) at org.springframework.boot.SpringApplication.lambda$callRunners$3(SpringApplication.java:774) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.base/java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:510) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:774) at org.springframework.boot.SpringApplication.run(SpringApplication.java:341) ... 3 more

1 resposta

O erro java.lang.NoSuchMethodError: 'void com.fasterxml.jackson.core.util.BufferRecycler.releaseToPool()' que você está encontrando geralmente indica um problema de incompatibilidade de versões entre as bibliotecas que seu projeto está utilizando.

Aqui estão algumas etapas que você pode seguir para tentar resolver este problema:

  1. Verifique as versões das bibliotecas: Certifique-se de que todas as versões das bibliotecas em seu pom.xml (se você estiver usando Maven) ou build.gradle (se você estiver usando Gradle) são compatíveis entre si. O erro sugere que há uma incompatibilidade com a biblioteca Jackson, que é usada para serialização e desserialização JSON.

  2. Atualize ou retroceda Jackson: Tente atualizar a versão da biblioteca Jackson para a versão mais recente compatível com as outras bibliotecas que você está usando. Se isso não funcionar, considere retroceder para uma versão anterior que seja conhecida por funcionar com suas outras dependências.

  3. Limpe o cache do Maven/Gradle: Às vezes, o cache pode causar problemas ao não atualizar corretamente as dependências. Você pode limpar o cache do Maven com o comando mvn clean e o do Gradle com gradle clean.

  4. Revisão das dependências transitivas: Use comandos como mvn dependency:tree ou gradle dependencies para ver o grafo de dependências e verificar se há múltiplas versões da mesma biblioteca sendo puxadas para seu projeto. Se houver, você pode precisar gerenciar explicitamente a versão da biblioteca para garantir que apenas uma versão seja usada.

  5. Isolamento do problema: Como o erro ocorre quando você tenta executar uma operação específica (salvar uma série no banco de dados), você pode tentar isolar essa parte do código para garantir que o problema não seja algo específico do seu código, mas sim das dependências.

Se após essas verificações o problema persistir, pode ser útil fornecer mais detalhes sobre seu ambiente de desenvolvimento ou considerar a possibilidade de pedir ajuda específica para sua configuração em fóruns ou no suporte das ferramentas/libraries que você está utilizando.