Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

java.lang.NoClassDefFoundError with Java 9 #147

Closed
boris-petrov opened this issue Sep 25, 2017 · 5 comments
Closed

java.lang.NoClassDefFoundError with Java 9 #147

boris-petrov opened this issue Sep 25, 2017 · 5 comments

Comments

@boris-petrov
Copy link

When using JDK 9, the following happens:

Step 'removeUnusedImports' found problem in 'some-source.java':
javax/tools/JavaFileManager$Location
java.lang.NoClassDefFoundError: javax/tools/JavaFileManager$Location
        at com.diffplug.spotless.java.GoogleJavaFormatStep$State.createRemoveUnusedImportsOnly(GoogleJavaFormatStep.java:113)
        at com.diffplug.spotless.FormatterStepImpl$Standard.format(FormatterStepImpl.java:76)
        at com.diffplug.spotless.FormatterStep$Strict.format(FormatterStep.java:76)
        at com.diffplug.spotless.Formatter.compute(Formatter.java:230)
        at com.diffplug.spotless.Formatter.isClean(Formatter.java:167)
        at com.diffplug.gradle.spotless.SpotlessTask.check(SpotlessTask.java:216)
        at com.diffplug.gradle.spotless.SpotlessTask.performAction(SpotlessTask.java:172)
        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 org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:179)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:135)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:122)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
        ...
@jbduncan
Copy link
Member

Hi @boris-petrov, thanks for the bug report! It looks to me that you're calling either removeUnusedImports() or googleJavaFormat() in your Gradle buildscript? Could you provide us with a reproducible MVCE that would allow us to investigate this further?

@boris-petrov
Copy link
Author

Hi @jbduncan - yes, I'm calling removeUnusedImports(). Well, a really simple reproduction is:

plugins {
	id 'com.diffplug.gradle.spotless' version '3.5.2'
}

repositories {
	mavenCentral()
	jcenter()
}

spotless {
	java {
		target fileTree('src') {
			include '**/*.java'
		}

		removeUnusedImports()
	}
}

And add a single file to src/main/java and run gradle spotlessJavaCheck. Be sure to use JDK 9.

@jbduncan
Copy link
Member

Many thanks @boris-petrov! It actually occurs to me now that this issue is likely a dupe of #83, so I'll close it for now, as resolving one should resolve the other. If you think, however, that this isn't a dupe, please let me know why and I'll reopen. :)

@jbduncan
Copy link
Member

Apologies for not noticing earlier about this issue being a dupe!

@boris-petrov
Copy link
Author

Not a problem! Apologies from my side that I didn't see an open issue for that! Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants