googlesamples / googlesamples/unity-jar-resolver

Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7

Open
#384 77 comments 8 reactions 0 assignees View on GitHub
type: feature request
Dominant language
C#
Stars
1.5k
Forks
371
Avg merge
14h 21m
Merged PRs (30d)
3

Description

### Please fill in the following fields:
Unity editor version: 2019.4.0f1 and also multiple of 2019.3.x versions
External Dependency Manager version: 1.2.155
Source you installed EDM: Unity Package Manager
Features in External Dependency Manager in use: Android Resolver
Plugins SDK in use: Firebase, Facebook, IronSource
Platform you are using the Unity editor on: Mac OS Catalina (10.15.5)
Platform you are targeting: Android
Scripting Runtime: IL2CPP

### Please describe the issue here:
I am unable to run Android Resolver because of exception:

```
Failed to run '/Users/peter/Projects/hopply/Temp/PlayServicesResolverGradle/gradlew --no-daemon -b "/Users/peter/Projects/hopply/Temp/PlayServicesResolverGradle/PlayServicesResolver.scripts.download_artifacts.gradle" "-PANDROID_HOME=/Applications/Unity/Hub/Editor/2019.4.0f1/PlaybackEngines/AndroidPlayer/SDK" "-PTARGET_DIR=/Users/peter/Projects/hopply/Assets/Plugins/Android" "-PMAVEN_REPOS=https://dl.bintray.com/ironsource-mobile/android-sdk/;https://maven.google.com/;https://dl.bintray.com/ironsource-mobile/android-adapters/;file:////Users/peter/Projects/hopply/Library/PackageCache/com.google.firebase.app@6.15.0/Firebase/m2repository;file:////Users/peter/Projects/hopply/Library/PackageCache/com.google.firebase.remote-config@6.15.0/Firebase/m2repository;file:////Users/peter/Projects/hopply/Library/PackageCache/com.google.firebase.analytics@6.15.0/Firebase/m2repository" "-PPACKAGES_TO_COPY=com.android.support:support-v4:25.3.1;com.android.support:appcompat-v7:25.3.1;com.android.support:cardview-v7:25.3.1;com.android.support:customtabs:25.3.1;com.parse.bolts:bolts-android:1.4.0;com.facebook.android:facebook-core:[6.2.0, 7);com.facebook.android:facebook-applinks:[6.2.0, 7);com.facebook.android:facebook-login:[6.2.0, 7);com.facebook.android:facebook-share:[6.2.0, 7);com.facebook.android:facebook-gamingservices:[6.2.0, 7);com.ironsource.sdk:mediationsdk:6.16.1;com.google.android.gms:play-services-ads-identifier:17.0.0;com.google.android.gms:play-services-ads:19.1.0;com.ironsource.adapters:admobadapter:4.3.9;com.ironsource.adapters:unityadsadapter:4.3.3;com.google.firebase:firebase-common:19.3.0;com.google.firebase:firebase-analytics:17.4.1;com.google.firebase:firebase-app-unity:6.15.0;com.google.firebase:firebase-config:19.1.4;com.google.firebase:firebase-config-unity:6.15.0;com.google.firebase:firebase-analytics-unity:6.15.0" "-PUSE_JETIFIER=1" "-PDATA_BINDING_VERSION=3.4.0"'

java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
at org.codehaus.groovy.vmplugin.VMPluginFactory.(VMPluginFactory.java:43)
at org.codehaus.groovy.reflection.GroovyClassValueFactory.(GroovyClassValueFactory.java:35)
at org.codehaus.groovy.reflection.ClassInfo.(ClassInfo.java:109)
at org.codehaus.groovy.reflection.ReflectionCache.getCachedClass(ReflectionCache.java:95)
at org.codehaus.groovy.reflection.ReflectionCache.(ReflectionCache.java:39)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerMethods(MetaClassRegistryImpl.java:209)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.(MetaClassRegistryImpl.java:107)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.(MetaClassRegistryImpl.java:85)
at groovy.lang.GroovySystem.(GroovySystem.java:36)
at org.codehaus.groovy.runtime.InvokerHelper.(InvokerHelper.java:86)
at groovy.lang.GroovyObjectSupport.getDefaultMetaClass(GroovyObjectSupport.java:59)
at groovy.lang.GroovyObjectSupport.(GroovyObjectSupport.java:32)
at org.gradle.api.internal.plugins.DefaultExtraPropertiesExtension.(DefaultExtraPropertiesExtension.java:29)
at org.gradle.api.internal.plugins.DefaultConvention.(DefaultConvention.java:47)
at org.gradle.api.internal.ExtensibleDynamicObject.(ExtensibleDynamicObject.java:58)
at org.gradle.initialization.DefaultSettings.(DefaultSettings.java:93)
at org.gradle.initialization.DefaultSettings_Decorated.(Unknown Source)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...
```

I found out that it is related to Gradle issue: https://github.com/gradle/gradle/issues/10248
So I tried to:
- manually change version of Gradle in Temp/PlayServicesResolverGradle/gradle/wrapper/gradle-wrapper.properties from gradle-5.1.1-bin.zip to gradle-6.4-bin.zip
- run that long gradlew command by myself (...gradlew --no-daemon -b "/Users/peter/Projects/...)
And it finishes without any problem.

My suggestion is to upgrade the Gradle used by resolver.

### Please answer the following, if applicable:
What's the issue repro rate?
**99%**

In the past, I was able to run Android resolver successfully 3 times exactly. I really don't know why it worked, because it was always with the same configuration after countless of failures.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.