Ik krijg deze uitzondering java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7 and java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.reflection.ReflectionCache
) wanneer ik de lente-opstarttoepassing start
Ik gebruik onderstaande tools
STS 3.9.10-release
Open JDK 14 64 bit
Veerlaars 2.2.5
Het werkte prima met Oracle jdk, maar het werkte niet met openjdk. Ik gebruik geen groovy libs. Dit is een op maven gebaseerd springbootproject.
Antwoord 1, autoriteit 100%
Hoe voer je de applicatie uit? Het is waarschijnlijk omdat je Gradle gebruikt als het bouwsysteem en JDK14 en de Gradle-versie oud is.
Referentie: https://github.com/gradle/gradle/issues/10248
Als je Gradle Wrapper gebruikt, raadpleeg dan $PROJECT_ROOT/gradle/wrapper/gradle-wrapper.properties
. Property distributionUrl moet zijn:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
Als het een oudere versie is, wijzig deze dan, voer ./gradlew clean build
uit en probeer het opnieuw.
Antwoord 2, autoriteit 34%
Zorg ervoor dat in het bestand android/gradle/wrapper/gradle-wrapper.properties
de distributionUrl
als volgt is:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
Opmerking: als je jdk 14 hebt geïnstalleerd
Antwoord 3, autoriteit 29%
Ik heb het opgelost door gewoon gradle-wrapper.properties in de gradle-map te bewerken, niet .gradle :
van:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.2-all.zip
naar:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip
herbouw en het is in orde.
Antwoord 4, autoriteit 10%
Heb hetzelfde probleem met een Maven & SpringBoot-project, geen Gradle wat dan ook.
De afhankelijkheid van org.codehaus.groovy is waarschijnlijk transitief via spring-cloud-contract-verifier. Voer mvn dependency:tree
uit om de hele afhankelijkheidsstructuur te bekijken.
Ik heb het opgelost door de lente-cloud-contract-maven-plugin-versie te upgraden naar 2.2.3-RELEASE
Antwoord 5, autoriteit 5%
Controleer of uw project draait met Java 14, ook al is het voorbereid voor Java 8.
Mijn IntelliJ-idee gaf dezelfde fout bij het uitvoeren van een Gradle-taak die perfect liep in de opdrachtregel met JDK 8. De standaard JDK van het ItelliJ Idea-project was echter 14.
Antwoord 6, autoriteit 4%
in mijn geval was de JRE-versie die werd gebruikt in de Configuratie uitvoerenanders dan de doel-JDK-versie in de pom.xml
Antwoord 7, autoriteit 3%
In mijn geval was de combinatie IntelliJ 2020.2, Kotlin 1.3.72, Maven 3.6.1 en SpringBoot 2.2.1-applicatie. Er wordt helemaal geen Gradle gebruikt in het project.
Op de een of andere manier was IntelliJ overgestapt op het gebruik van OpenJDK14 – bij het teruggaan naar OpenJDK11 begon alles weer te werken.
Antwoord 8, autoriteit 2%
gebruik je een bibliotheek van derden die afhankelijkheden van org.codehaus.groovymet zich meebrengt? Zo ja, dan kun je proberen de vereiste groovy afhankelijkheden zelf te vervangen door de meest recente releases.
In mijn geval was het de org.liquibase:liquibase-groovy-dsl,
dus ik deed dit:
<dependency>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-groovy-dsl</artifactId>
<version>2.1.1</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
</exclusion>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-sql</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-sql</artifactId>
<version>3.0.3</version>
</dependency>
Antwoord 9, autoriteit 2%
Ik los dit probleem op wanneer ik Facebook 7.19.2en Google play Games 0.10.09heb geïntegreerd.
In mijn geval gebruiken JDK en SDK (en andere in Edit/Preferences/External -> Tools-Android
) standaardpaden Unity:
JDK
C:/ProgramFiles/Unity/Hub/Editor/2019.2.12f1/Editor/Data/PlaybackEngines/AndroidPlayer/Tools\OpenJDK\Windows
SDK
C:/Program Files/Unity/Hub/Editor/2019.2.12f1/Editor/Data/PlaybackEngines/AndroidPlayer\SDK
in milieuvariabelen (systeemproporieten / geavanceerd) Toegevoegd:
Zoek (of klik op Nieuwe variabele onder Gebruikersvariabelen)
-
JAVA_HOME
EN Voeg root JDK-pad toe. -
JAVA_BIN
en PATH VDAD JDK / BIN -
JAVA_LIB
en PAD toevoegen JDK / LIB
Voeg ook deze paden toe in systeemvariabelen aan variabele “pad”.
Gebruik SDK niet van standaard Unity en JDK vanaf de standaard
Start vervolgens eenheid (en betere pc).
Dan in editor Unity – Assets/Play -> Service -> Resolve/Android -> Resolver/Force -> Resolve
Allemaal goed.
10
Ik heb dit opgelost door geïnstalleerd JRE-pad in Window = & GT te selecteren; Voorkeuren = & GT; Java = & GT; Geïnstalleerd JRE = & GT; Herhaal bestaande & amp; Kies uit de lokale map.
Zorg ervoor dat u Java_Home-variabele in milieuvariabele hebt ingesteld
11
Ik heb dit opgelost door Apache Groovy 2.4.7 in POM.XML
12
Als u op zoek bent naar een vergelijkbare oplossing als @godsim gedeeld, maar voor gradle liquabase-plugin, wijzigt u uw configuratiedeel in build.gradle om de groovy-afhankelijkheid van Liquabase uit te sluiten:
configurations {
...
liquibaseRuntime.exclude group: "org.codehaus.groovy"
}
en voeg vervolgens handmatig groovy toe in afhankelijkheden sectie:
dependencies {
...
liquibaseRuntime('org.liquibase:liquibase-core:3.8.1')
liquibaseRuntime('org.codehaus.groovy:groovy-all:3.0.3')
liquibaseRuntime 'org.postgresql:postgresql'
liquibaseRuntime('org.liquibase:liquibase-groovy-dsl:2.1.2')
liquibaseRuntime('org.liquibase.ext:liquibase-hibernate5:3.10.2')
liquibaseRuntime('org.springframework.boot:spring-boot-starter-data-jpa')
liquibaseRuntime sourceSets.main.output
...
}
Antwoord 13
Dit probleem is voor mij alleen opgelost toen ik compileSdkVersion en targetSdkVersion heb bijgewerkt naar 30 met minSdkVersion 19
Antwoord 14
Kreeg de fout bij het gebruik van oude versies van de plug-in spotbugs-maven-plugin
en de bijbehorende afhankelijkheid van spotbugs
maven.
Opgelost door beide te upgraden naar 4.2.0
.
Antwoord 15
Voor Maven-gebruikers: volg de onderstaande stappen om dit probleem op te lossen
- Je moet geruststellen vóór de JUnit-afhankelijkheidsverklaring in je pom.xml / build.gradle plaatsen om er zeker van te zijn dat de juiste versie van Hamcrest wordt gebruikt.
- Voeg de volgende afhankelijkheden toe aan uw pom.xml
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>3.0.8</version>
<type>pom</type>
</dependency>
<!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>3.0.8</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-json -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-json</artifactId>
<version>3.0.8</version>
</dependency>
Ik hoop dat dit je probleem oplost. Het werkt voor mij. De instructie vermeld bij stap #1 wordt gekopieerd van de officiële site van Rest Assured. Bedankt
Antwoord 16
Ga naar JDK 11, het zou moeten werken.