'How to solve the error "java.lang.NoClassDefFoundError: Could not initialize class com.google.inject.internal.cglib.core.$MethodWrapper"

thanks for your attention, this is my first post so please be lenient towards me. My problem is a bit strange, I've been deploying my spring boot application on Azure App Service for several months now, but this morning when I tried to deploy it again, I got the error [ERROR] Error executing Maven. [ERROR] java.lang.IllegalStateException: Unable to load cache item [ERROR] Caused by: Unable to load cache item [ERROR] Caused by: Could not initialize class com.google.inject.internal.cglib.core.$MethodWrapper and the most surprising is that all other Maven commands produce this error, thanks in advance for your help.

Return of the command mvn -X

Apache Maven 3.6.0
Maven home: /usr/share/maven
Java version: 17.0.2, vendor: Microsoft, runtime: /usr/lib/jvm/msopenjdk-17-amd64
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.4.0-1077-azure", arch: "amd64", family: "unix"
[ERROR] Error executing Maven.
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalStateException: Unable to load cache item
    at com.google.common.cache.LocalCache$Segment.get (LocalCache.java:2205)
    at com.google.common.cache.LocalCache.get (LocalCache.java:3951)
    at com.google.common.cache.LocalCache.getOrLoad (LocalCache.java:3955)
    at com.google.common.cache.LocalCache$LocalLoadingCache.get (LocalCache.java:4870)
    at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked (LocalCache.java:4876)
    at com.google.inject.internal.FailableCache.get (FailableCache.java:51)
    at com.google.inject.internal.ConstructorInjectorStore.get (ConstructorInjectorStore.java:48)
    at com.google.inject.internal.ConstructorBindingImpl.initialize (ConstructorBindingImpl.java:155)
    at com.google.inject.internal.InjectorImpl.initializeBinding (InjectorImpl.java:581)
    at com.google.inject.internal.AbstractBindingProcessor$Processor$1.run (AbstractBindingProcessor.java:176)
    at com.google.inject.internal.ProcessedBindingData.initializeBindings (ProcessedBindingData.java:49)
    at com.google.inject.internal.InternalInjectorCreator.initializeStatically (InternalInjectorCreator.java:122)
    at com.google.inject.internal.InternalInjectorCreator.build (InternalInjectorCreator.java:106)
    at com.google.inject.Guice.createInjector (Guice.java:87)
    at com.google.inject.Guice.createInjector (Guice.java:69)
    at com.google.inject.Guice.createInjector (Guice.java:59)
    at org.codehaus.plexus.DefaultPlexusContainer.addPlexusInjector (DefaultPlexusContainer.java:481)
    at org.codehaus.plexus.DefaultPlexusContainer.<init> (DefaultPlexusContainer.java:206)
    at org.apache.maven.cli.MavenCli.container (MavenCli.java:635)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:281)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.IllegalStateException: Unable to load cache item
    at com.google.inject.internal.cglib.core.internal.$LoadingCache.createEntry (LoadingCache.java:79)
    at com.google.inject.internal.cglib.core.internal.$LoadingCache.get (LoadingCache.java:34)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator$ClassLoaderData.get (AbstractClassGenerator.java:119)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator.create (AbstractClassGenerator.java:294)
    at com.google.inject.internal.cglib.reflect.$FastClass$Generator.create (FastClass.java:65)
    at com.google.inject.internal.BytecodeGen.newFastClassForMember (BytecodeGen.java:258)
    at com.google.inject.internal.BytecodeGen.newFastClassForMember (BytecodeGen.java:207)
    at com.google.inject.internal.DefaultConstructionProxyFactory.create (DefaultConstructionProxyFactory.java:49)
    at com.google.inject.internal.ProxyFactory.create (ProxyFactory.java:156)
    at com.google.inject.internal.ConstructorInjectorStore.createConstructor (ConstructorInjectorStore.java:92)
    at com.google.inject.internal.ConstructorInjectorStore.access$000 (ConstructorInjectorStore.java:29)
    at com.google.inject.internal.ConstructorInjectorStore$1.create (ConstructorInjectorStore.java:37)
    at com.google.inject.internal.ConstructorInjectorStore$1.create (ConstructorInjectorStore.java:33)
    at com.google.inject.internal.FailableCache$1.load (FailableCache.java:40)
    at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture (LocalCache.java:3540)
    at com.google.common.cache.LocalCache$Segment.loadSync (LocalCache.java:2321)
    at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad (LocalCache.java:2284)
    at com.google.common.cache.LocalCache$Segment.get (LocalCache.java:2199)
    at com.google.common.cache.LocalCache.get (LocalCache.java:3951)
    at com.google.common.cache.LocalCache.getOrLoad (LocalCache.java:3955)
    at com.google.common.cache.LocalCache$LocalLoadingCache.get (LocalCache.java:4870)
    at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked (LocalCache.java:4876)
    at com.google.inject.internal.FailableCache.get (FailableCache.java:51)
    at com.google.inject.internal.ConstructorInjectorStore.get (ConstructorInjectorStore.java:48)
    at com.google.inject.internal.ConstructorBindingImpl.initialize (ConstructorBindingImpl.java:155)
    at com.google.inject.internal.InjectorImpl.initializeBinding (InjectorImpl.java:581)
    at com.google.inject.internal.AbstractBindingProcessor$Processor$1.run (AbstractBindingProcessor.java:176)
    at com.google.inject.internal.ProcessedBindingData.initializeBindings (ProcessedBindingData.java:49)
    at com.google.inject.internal.InternalInjectorCreator.initializeStatically (InternalInjectorCreator.java:122)
    at com.google.inject.internal.InternalInjectorCreator.build (InternalInjectorCreator.java:106)
    at com.google.inject.Guice.createInjector (Guice.java:87)
    at com.google.inject.Guice.createInjector (Guice.java:69)
    at com.google.inject.Guice.createInjector (Guice.java:59)
    at org.codehaus.plexus.DefaultPlexusContainer.addPlexusInjector (DefaultPlexusContainer.java:481)
    at org.codehaus.plexus.DefaultPlexusContainer.<init> (DefaultPlexusContainer.java:206)
    at org.apache.maven.cli.MavenCli.container (MavenCli.java:635)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:281)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.google.inject.internal.cglib.core.$MethodWrapper
    at com.google.inject.internal.cglib.core.$DuplicatesPredicate.evaluate (DuplicatesPredicate.java:104)
    at com.google.inject.internal.cglib.core.$CollectionUtils.filter (CollectionUtils.java:52)
    at com.google.inject.internal.cglib.reflect.$FastClassEmitter.<init> (FastClassEmitter.java:69)
    at com.google.inject.internal.cglib.reflect.$FastClass$Generator.generateClass (FastClass.java:77)
    at com.google.inject.internal.cglib.core.$DefaultGeneratorStrategy.generate (DefaultGeneratorStrategy.java:25)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator.generate (AbstractClassGenerator.java:332)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator$ClassLoaderData$3.apply (AbstractClassGenerator.java:96)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator$ClassLoaderData$3.apply (AbstractClassGenerator.java:94)
    at com.google.inject.internal.cglib.core.internal.$LoadingCache$2.call (LoadingCache.java:54)
    at java.util.concurrent.FutureTask.run (FutureTask.java:264)
    at com.google.inject.internal.cglib.core.internal.$LoadingCache.createEntry (LoadingCache.java:61)
    at com.google.inject.internal.cglib.core.internal.$LoadingCache.get (LoadingCache.java:34)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator$ClassLoaderData.get (AbstractClassGenerator.java:119)
    at com.google.inject.internal.cglib.core.$AbstractClassGenerator.create (AbstractClassGenerator.java:294)
    at com.google.inject.internal.cglib.reflect.$FastClass$Generator.create (FastClass.java:65)
    at com.google.inject.internal.BytecodeGen.newFastClassForMember (BytecodeGen.java:258)
    at com.google.inject.internal.BytecodeGen.newFastClassForMember (BytecodeGen.java:207)
    at com.google.inject.internal.DefaultConstructionProxyFactory.create (DefaultConstructionProxyFactory.java:49)
    at com.google.inject.internal.ProxyFactory.create (ProxyFactory.java:156)
    at com.google.inject.internal.ConstructorInjectorStore.createConstructor (ConstructorInjectorStore.java:92)
    at com.google.inject.internal.ConstructorInjectorStore.access$000 (ConstructorInjectorStore.java:29)
    at com.google.inject.internal.ConstructorInjectorStore$1.create (ConstructorInjectorStore.java:37)
    at com.google.inject.internal.ConstructorInjectorStore$1.create (ConstructorInjectorStore.java:33)
    at com.google.inject.internal.FailableCache$1.load (FailableCache.java:40)
    at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture (LocalCache.java:3540)
    at com.google.common.cache.LocalCache$Segment.loadSync (LocalCache.java:2321)
    at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad (LocalCache.java:2284)
    at com.google.common.cache.LocalCache$Segment.get (LocalCache.java:2199)
    at com.google.common.cache.LocalCache.get (LocalCache.java:3951)
    at com.google.common.cache.LocalCache.getOrLoad (LocalCache.java:3955)
    at com.google.common.cache.LocalCache$LocalLoadingCache.get (LocalCache.java:4870)
    at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked (LocalCache.java:4876)
    at com.google.inject.internal.FailableCache.get (FailableCache.java:51)
    at com.google.inject.internal.ConstructorInjectorStore.get (ConstructorInjectorStore.java:48)
    at com.google.inject.internal.ConstructorBindingImpl.initialize (ConstructorBindingImpl.java:155)
    at com.google.inject.internal.InjectorImpl.initializeBinding (InjectorImpl.java:581)
    at com.google.inject.internal.AbstractBindingProcessor$Processor$1.run (AbstractBindingProcessor.java:176)
    at com.google.inject.internal.ProcessedBindingData.initializeBindings (ProcessedBindingData.java:49)
    at com.google.inject.internal.InternalInjectorCreator.initializeStatically (InternalInjectorCreator.java:122)
    at com.google.inject.internal.InternalInjectorCreator.build (InternalInjectorCreator.java:106)
    at com.google.inject.Guice.createInjector (Guice.java:87)
    at com.google.inject.Guice.createInjector (Guice.java:69)
    at com.google.inject.Guice.createInjector (Guice.java:59)
    at org.codehaus.plexus.DefaultPlexusContainer.addPlexusInjector (DefaultPlexusContainer.java:481)
    at org.codehaus.plexus.DefaultPlexusContainer.<init> (DefaultPlexusContainer.java:206)
    at org.apache.maven.cli.MavenCli.container (MavenCli.java:635)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:281)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)


Solution 1:[1]

The above error is due to the maven incompatible with java version.

It seems that It was due to maven 3.6.0 being incompatible with jdk17. Try to downgrade to jdk11, problem will be solved.

You can Download Apache Maven and install 3.8.4, you can check for the newest version here.

Solution 2:[2]

i had the same issue while following a tutorial in Azure. Even if you can't override the java jdk on the server you can add one in your home repository. Personnally here is what i did via Azure Cli (bash) :

1 - I went to a directory i created

cd /home/sylvie/java

2 - I dowloaded the openjdk-11 to the machine and untar it :

curl https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz | tar -xz 

3 - I updated the 2 following environment variables :

export PATH=/home/sylvie/java/jdk-11:$PATH
export JAVA_HOME=/home/sylvie/java/jdk-11

And i had no loger this issue when i used the maven commands in my spring boot app directory.

you can also read kind of a same advice on following https://docs.microsoft.com/en-us/answers/questions/850521/how-to-downgrade-java-version-default-installed-in.html

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 RajkumarMamidiChettu-MT
Solution 2 tbjorch