This is an automated email from the ASF dual-hosted git repository. tibordigana pushed a commit to branch release/2.22.3 in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
The following commit(s) were added to refs/heads/release/2.22.3 by this push: new 57869d1 a probable root cause illegal-access 57869d1 is described below commit 57869d18337f7bb8652e546039e006b587456ba4 Author: tibordigana <tibordig...@apache.org> AuthorDate: Sun Apr 3 00:30:09 2022 +0200 a probable root cause illegal-access --- .../org/apache/maven/surefire/its/CheckTestNgVersionsIT.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgVersionsIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgVersionsIT.java index b6c05ce..474f76f 100644 --- a/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgVersionsIT.java +++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgVersionsIT.java @@ -29,6 +29,8 @@ import org.apache.maven.surefire.its.fixture.SurefireLauncher; import org.junit.Ignore; import org.junit.Test; +import static org.apache.commons.lang3.JavaVersion.JAVA_9; +import static org.apache.commons.lang3.JavaVersion.JAVA_RECENT; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -173,6 +175,16 @@ public class CheckTestNgVersionsIT launcher.sysProp( "testNgClassifier", classifier ); } + if ( ( version.startsWith( "5.12" ) || version.startsWith( "5.13" ) || version.startsWith( "5.14" ) ) + && JAVA_RECENT.atLeast( JAVA_9 ) ) + { + // TestNG 5.12 - 5.14 uses Guava lib ang CGLib with reflective access. + // WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.ReflectUtils$2 + // (testng-5.12.1.jar) to method + // java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) + launcher.argLine( "--illegal-access=deny --add-opens java.base/java.lang=ALL-UNNAMED" ); + } + final OutputValidator outputValidator = launcher.executeTest(); outputValidator.assertTestSuiteResults( 3, 0, 0, 0 );