Reputation: 3619
I've updated java from 8 to 9-ea and gradle from 2.13 to 3.4.1. Below is the gradle --version
output.
------------------------------------------------------------
Gradle 3.4.1
------------------------------------------------------------
Build time: 2017-03-03 19:45:41 UTC
Revision: 9eb76efdd3d034dc506c719dac2955efb5ff9a93
Groovy: 2.4.7
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 9-ea (Oracle Corporation 9-ea+158)
OS: Linux 4.8.0-36-generic amd64
while compiling below error is encountered:
FAILURE: Build failed with an exception.
* What went wrong:
java.lang.ExceptionInInitializerError (no error message)
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
and the output of gradle --stacktrace
is below:
java.lang.ExceptionInInitializerError
at org.gradle.initialization.DefaultClassLoaderRegistry.restrictTo(DefaultClassLoaderRegistry.java:40)
at org.gradle.initialization.DefaultClassLoaderRegistry.restrictToGradleApi(DefaultClassLoaderRegistry.java:36)
at org.gradle.initialization.DefaultClassLoaderRegistry.<init>(DefaultClassLoaderRegistry.java:30)
at org.gradle.internal.service.scopes.GlobalScopeServices.createClassLoaderRegistry(GlobalScopeServices.java:213)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:547)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.internal.service.DefaultServiceRegistry.invoke(DefaultServiceRegistry.java:462)
at org.gradle.internal.service.DefaultServiceRegistry.access$1200(DefaultServiceRegistry.java:84)
at org.gradle.internal.service.DefaultServiceRegistry$FactoryMethodService.invokeMethod(DefaultServiceRegistry.java:805)
at org.gradle.internal.service.DefaultServiceRegistry$FactoryService.create(DefaultServiceRegistry.java:761)
at org.gradle.internal.service.DefaultServiceRegistry$ManagedObjectProvider.getInstance(DefaultServiceRegistry.java:598)
at org.gradle.internal.service.DefaultServiceRegistry$SingletonService.get(DefaultServiceRegistry.java:643)
at org.gradle.internal.service.DefaultServiceRegistry.applyConfigureMethod(DefaultServiceRegistry.java:253)
at org.gradle.internal.service.DefaultServiceRegistry.findProviderMethods(DefaultServiceRegistry.java:214)
at org.gradle.internal.service.DefaultServiceRegistry.addProvider(DefaultServiceRegistry.java:352)
at org.gradle.internal.service.ServiceRegistryBuilder.build(ServiceRegistryBuilder.java:52)
at org.gradle.launcher.cli.BuildActionsFactory.createGlobalClientServices(BuildActionsFactory.java:148)
at org.gradle.launcher.cli.BuildActionsFactory.runBuildWithDaemon(BuildActionsFactory.java:108)
at org.gradle.launcher.cli.BuildActionsFactory.createAction(BuildActionsFactory.java:83)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.createAction(CommandLineActionFactory.java:249)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:239)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:217)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:33)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:210)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:174)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:547)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected java.lang.Package[] java.lang.ClassLoader.getPackages() accessible: module java.base does not "opens java.lang" to unnamed module @6c7a164b
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:335)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:278)
at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:196)
at java.base/java.lang.reflect.Method.setAccessible(Method.java:190)
at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:42)
at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:32)
at org.gradle.internal.reflect.JavaMethod.<init>(JavaMethod.java:36)
at org.gradle.internal.reflect.JavaReflectionUtil.method(JavaReflectionUtil.java:223)
at org.gradle.internal.classloader.FilteringClassLoader.<clinit>(FilteringClassLoader.java:49)
... 40 more
when I set
export GRADLE_OPTS="-Dorg.gradle.jvmargs=--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED"
as suggested at different places, issue remains the same.
Kindly help me out in resolving the issue.
UPDATE:
Changed GRADLE_OPTS
to (wrapped)
export GRADLE_OPTS="-Dorg.gradle.jvmargs=
--add-opens java.lang=ALL-UNNAMED
--add-opens java.util=ALL-UNNAMED
--add-opens java.io=ALL-UNNAMED"
Got the following error:
Error: Could not find or load main class java.lang=ALL-UNNAMED
Caused by: java.lang.ClassNotFoundException: java.lang=ALL-UNNAMED
Upvotes: 17
Views: 30718
Reputation: 161
I was having two different versions. jdk 11 and 20. I was getting this kind of error Execution failed for task ':compileJava'.
while running with 20. However after switching to JDK 11 export JAVA_HOME=/usr/libexec/java_home -v 11
I am able to overcome the error
Upvotes: 1
Reputation: 34271
Gradle - java.lang.ExceptionInInitializerError
It can be because of [Could not find tools.jar]
I figured it out when downgraded com.android.tools.build:gradle
Upvotes: 1
Reputation: 3104
When I hit this error rerunning with the argument --stacktrace
produced a much more intelligible error message in one of the exceptions that was causing this problem in my build script.
The challenge with debugging this is that it happens so early in Gradle (the initialization phase) that not a lot of error message information is available, so it is best to try to debug it from the stacktrace.
Even if you don't get a good message from one of the exceptions, the classes and methods from the stack should give some indication of what Gradle was doing at the time just before it threw.
Upvotes: 2
Reputation: 16842
3 years later, 2020:
I could build my project with both ./gradlew build
and gradle build
(v 6.2.1 and 6.5), but IntelliJ Idea gave me:
Execution failed for task ':compileJava'.
> java.lang.ExceptionInInitializerError (no error message)
I tried to File--Invalidate Caches/Restart, but that did not help, at least by itself. Then I reloaded the gradle project (the leftmost top icon in the Gradle window) and run the Tasks--application--run task from the Gradle window. It worked, and then "Run" worked too (no surprise here, the button seems to repeat the last run).
Upvotes: 3
Reputation: 3453
Upgrading Gradle to 4.10.2
version and Java JDK 8 to 1.8.0_191
version worked for me.
Hope it helps!
Upvotes: 8
Reputation: 351
I was able to make gradle work using Java 9-ea by running the following terminal command:
export JDK_JAVA_OPTIONS='--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED'
-via https://github.com/gradle/gradle/issues/1095
-Added this to /etc/profile so that it runs on startup
Upvotes: 5