11/*
2- * Copyright 2016 DiffPlug
2+ * Copyright 2016-2020 DiffPlug
33 *
44 * Licensed under the Apache License, Version 2.0 (the "License");
55 * you may not use this file except in compliance with the License.
1616package com .diffplug .spotless .extra .groovy ;
1717
1818import com .diffplug .spotless .FormatterStep ;
19+ import com .diffplug .spotless .JreVersion ;
1920import com .diffplug .spotless .TestProvisioner ;
2021import com .diffplug .spotless .extra .EclipseBasedStepBuilder ;
2122import com .diffplug .spotless .extra .eclipse .EclipseCommonTests ;
@@ -36,6 +37,30 @@ protected String getTestExpectation(String version) {
3637 return "class F{\n \t def m(){}\n }" ;
3738 }
3839
40+ @ Override
41+ protected void makeAssumptions () {
42+ // JRE 11 warns like this:
43+ // WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
44+ // WARNING: All illegal access operations will be denied in a future release
45+ // And after that it fails like this:
46+ // Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
47+ // at org.codehaus.groovy.vmplugin.VMPluginFactory.<clinit>(VMPluginFactory.java:39)
48+ // at org.codehaus.groovy.ast.ClassHelper.makeCached(ClassHelper.java:133)
49+ // at org.codehaus.groovy.ast.ClassHelper.<clinit>(ClassHelper.java:67)
50+ // at org.codehaus.groovy.classgen.Verifier.<clinit>(Verifier.java:113)
51+ // at org.codehaus.groovy.control.CompilationUnit.<init>(CompilationUnit.java:158)
52+ // at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyParser.makeCompilationUnit(GroovyParser.java:467)
53+ // at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyParser.<init>(GroovyParser.java:247)
54+ // at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyParser.<init>(GroovyParser.java:216)
55+ // at org.codehaus.groovy.eclipse.core.compiler.GroovySnippetParser.dietParse(GroovySnippetParser.java:105)
56+ // at org.codehaus.groovy.eclipse.core.compiler.GroovySnippetParser.parse(GroovySnippetParser.java:69)
57+ // at org.codehaus.groovy.eclipse.refactoring.core.utils.ASTTools.getASTNodeFromSource(ASTTools.java:204)
58+ // at org.codehaus.groovy.eclipse.refactoring.formatter.DefaultGroovyFormatter.initCodebase(DefaultGroovyFormatter.java:109)
59+ // at org.codehaus.groovy.eclipse.refactoring.formatter.DefaultGroovyFormatter.format(DefaultGroovyFormatter.java:121)
60+ // at com.diffplug.spotless.extra.eclipse.groovy.GrEclipseFormatterStepImpl.format(GrEclipseFormatterStepImpl.java:81)
61+ JreVersion .assume11OrLess ();
62+ }
63+
3964 @ Override
4065 protected FormatterStep createStep (String version ) {
4166 EclipseBasedStepBuilder builder = GrEclipseFormatterStep .createBuilder (TestProvisioner .mavenCentral ());
0 commit comments