Below is jdk 17 having class version 61 as set in the Path:
C:\Program Files\Java\jdk-17\bin>java -XshowSettings:properties -version Property settings: file.encoding = Cp1252 file.separator = \ java.class.path = java.class.version = 61.0 java.home = C:\Program Files\Java\jdk-17 java.io.tmpdir = C:\Users\U12207~1\AppData\Local\Temp\30\ java.library.path = C:\Program Files\Java\jdk-17\bin C:\Windows\Sun\Java\bin C:\Windows\system32 C:\Windows "C:\Program Files\Java\jdk-17\bin" D:\Git-Runners\_work\_tool\Python\3.12.3\x64\Scripts\ D:\Git-Runners\USDF11V1566-s6\_work\_tool\Python\3.12.3\x64\ C:\Program Files\Microsoft SQL Server\160\DAC\bin C:\Program Files\OpenLogic\jre-17.0.9.9-hotspot\bin C:\Python312\Scripts\ C:\Python312\ C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin C:\Program Files\Common Files\Oracle\Java\javapath C:\Program Files (x86)\Common Files\Oracle\Java\javapath D:\Git-Runners\s3\_work\_tool\Python\3.11.4\x64\Scripts\ D:\Git-Runners\s3\_work\_tool\Python\3.11.4\x64\ C:\Python311\Scripts\ C:\Python311\ C:\Program Files\Python310\Scripts\ C:\Program Files\Python310\ C:\FileNet\IDM C:\FileNet\Shared C:\Program Files\docker C:\Windows\system32 C:\Windows C:\Windows\System32\Wbem C:\Windows\System32\WindowsPowerShell\v1.0\ C:\Program Files\dotnet\ C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\ C:\Program Files\Microsoft SQL Server\150\Tools\Binn\ C:\Program Files (x86)\Microsoft Visual Studio\Installer C:\FileNet\FNSW\CLIENT\BIN C:\FileNet\FNSW\CLIENT\SHOBJ C:\Program Files\Git LFS D:\Jenkins\jre\bin C:\Users\automated-build\AppData\Roaming\npm C:\ProgramData\chocolatey\bin C:\Program Files\Perforce\ C:\Users\u1251433_app\Downloads\terraform_1.3.6_windows_amd641\ D:\Jenkins\gradle-8.0.2\bin C:\Program Files\Git\cmd C:\ProgramData\ComposerSetup\bin C:\PHP7 C:\Program Files\nodejs C:\Program Files\Git\bin C:\Program Files\Git\mingw64\bin C:\Program Files\nodejs D:\Jenkins\tools\maven\bin C:\Program Files\ICW\bin C:\Program Files\Amazon\AWSCLIV2\ D:\Tools\Snyk D:\Jenkins\tools\terraform C:\Program Files\apache-ant-1.9.16\bin C:\Program Files\Git\bin C:\Program Files (x86)\dotnet-core-uninstall\ C:\Program Files\nodejs\ C:\Users\svc-areheal\AppData\Local\Microsoft\WindowsApps C:\Program Files\Java\jdk-1.8\bin C:\Program Files\Microsoft SQL Server\160\DAC\bin C:\Program Files\Java\jdk-1.8\bin C:\Program Files\Java\jdk-17\bin . . java.runtime.name = Java(TM) SE Runtime Environment java.runtime.version = 17.0.11+7-LTS-207 java.specification.name = Java Platform API Specification java.specification.vendor = Oracle Corporation java.specification.version = 17 java.vendor = Oracle Corporation java.vendor.url = https://java.oracle.com/ java.vendor.url.bug = https://bugreport.java.com/bugreport/ java.version = 17.0.11 java.version.date = 2024-04-16 java.vm.compressedOopsMode = Zero based java.vm.info = mixed mode, sharing java.vm.name = Java HotSpot(TM) 64-Bit Server VM java.vm.specification.name = Java Virtual Machine Specification java.vm.specification.vendor = Oracle Corporation java.vm.specification.version = 17 java.vm.vendor = Oracle Corporation java.vm.version = 17.0.11+7-LTS-207 jdk.debug = release line.separator = \r \n native.encoding = Cp1252 os.arch = amd64 os.name = Windows Server 2019 os.version = 10.0 path.separator = ; sun.arch.data.model = 64 sun.boot.library.path = C:\Program Files\Java\jdk-17\bin sun.cpu.endian = little sun.cpu.isalist = amd64 sun.io.unicode.encoding = UnicodeLittle sun.java.launcher = SUN_STANDARD sun.jnu.encoding = Cp1252 sun.management.compiler = HotSpot 64-Bit Tiered Compilers sun.os.patch.level = sun.stderr.encoding = cp437 sun.stdout.encoding = cp437 user.country = US user.dir = C:\Program Files\Java\jdk-17\bin user.home = C:\Users\u1220753_app user.language = en user.name = U1220753_app user.script = user.variant = java version "17.0.11" 2024-04-16 LTS Java(TM) SE Runtime Environment (build 17.0.11+7-LTS-207) Java HotSpot(TM) 64-Bit Server VM (build 17.0.11+7-LTS-207, mixed mode, sharing) C:\Program Files\Java\jdk-17\bin>set PATH="C:\Program Files\Java\jdk-17\bin";%PATH%;.; Below is my sonarqube command to perform the scan:
C:\Program Files\Java\jdk-17\bin>D:\sonarscanner\scanner\bin\sonar-scanner.bat --define sonar.host.url="http://sonar-rm.mybank.com:9000/" --define sonar.login="***" --define sonar.projectKey="my_service" --define sonar.projectName="mybank/my-service" -Dsonar.java.binaries="D:\Git-Runners\_work\Velocity_StartStop\StartStop\service\src" INFO: Scanner configuration file: NONE INFO: Project root configuration file: NONE INFO: SonarScanner 4.6.1.2450 INFO: Java 11.0.3 AdoptOpenJDK (64-bit) INFO: Windows Server 2019 10.0 amd64 INFO: User cache: C:\Users\u7899221_app\.sonar\cache INFO: Scanner configuration file: NONE INFO: Project root configuration file: NONE INFO: Analyzing on SonarQube server 10.4.1.88267 INFO: Default locale: "en_US", source code encoding: "windows-1252" (analysis is platform dependent) INFO: ------------------------------------------------------------------------ INFO: EXECUTION FAILURE INFO: ------------------------------------------------------------------------ INFO: Total time: 0.566s INFO: Final Memory: 3M/60M INFO: ------------------------------------------------------------------------ ERROR: Error during SonarScanner execution java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(Unknown Source) at java.base/java.security.SecureClassLoader.defineClass(Unknown Source) at java.base/java.net.URLClassLoader.defineClass(Unknown Source) at java.base/java.net.URLClassLoader$1.run(Unknown Source) at java.base/java.net.URLClassLoader$1.run(Unknown Source) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.net.URLClassLoader.findClass(Unknown Source) at org.sonarsource.scanner.api.internal.IsolatedClassloader.loadClass(IsolatedClassloader.java:82) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) at org.sonarsource.scanner.api.internal.batch.DefaultBatchFactory.createBatch(DefaultBatchFactory.java:32) at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) at com.sun.proxy.$Proxy0.execute(Unknown Source) at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189) at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138) at org.sonarsource.scanner.cli.Main.execute(Main.java:112) at org.sonarsource.scanner.cli.Main.execute(Main.java:75) at org.sonarsource.scanner.cli.Main.main(Main.java:61) ERROR: ERROR: Re-run SonarScanner using the -X switch to enable full debug logging. I used github's setup java workflow to setup java 1.8, 11 and version 17 but everytime i get the error reported above.
C:\Program Files\Java\jdk-17\bin>echo %PATH% "C:\Program Files\Java\jdk-17\bin";D:\Git-Runners\s6\_work\_tool\Python\3.12.3\x64\Scripts\;D:\Git-Runners\s6\_work\_tool\Python\3.12.3\x64\;D:\Git-Runners\s3\_work\_tool\Python\3.11.4\x64\Scripts\;D:\Git-Runners\s3\_work\_tool\Python\3.11.4\x64\;;.; C:\Program Files\Java\jdk-17\bin>echo %JAVA_HOME% C:\Program Files\Java\jdk-17\ Upon inputs from user g00se i used jdk 11 for sonarqube and jdk 1.8 for compatibility using -Dsonar.java.jdkHome with source code being scanned. Output below:
D:\Git-Runners\s7\_work\_tool\Java_Adopt_jdk\11.0.23-9\x64\bin>D:\sonarscanner\scanner\bin\sonar-scanner.bat --define sonar.host.url="http://sonar-rm.mybank.com:9000/" --define sonar.login="***" --define sonar.projectKey="my_service" --define sonar.projectName="mybank/my-service" -Dsonar.java.jdkHome="C:\Program Files\Java\jdk-1.8" -Dsonar.java.binaries="D:\Git-Runners\s1\_work\StartStop\StartStop\my-service\src" INFO: Scanner configuration file: NONE INFO: Project root configuration file: NONE INFO: SonarScanner 4.6.1.2450 INFO: Java 11.0.3 AdoptOpenJDK (64-bit) INFO: Windows Server 2019 10.0 amd64 INFO: User cache: C:\Users\user12_app\.sonar\cache INFO: Scanner configuration file: NONE INFO: Project root configuration file: NONE INFO: Analyzing on SonarQube server 10.4.1.88267 INFO: Default locale: "en_US", source code encoding: "windows-1252" (analysis is platform dependent) INFO: ------------------------------------------------------------------------ INFO: EXECUTION FAILURE INFO: ------------------------------------------------------------------------ INFO: Total time: 0.536s INFO: Final Memory: 3M/54M INFO: ------------------------------------------------------------------------ ERROR: Error during SonarScanner execution java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(Unknown Source) at java.base/java.security.SecureClassLoader.defineClass(Unknown Source) at java.base/java.net.URLClassLoader.defineClass(Unknown Source) at java.base/java.net.URLClassLoader$1.run(Unknown Source) at java.base/java.net.URLClassLoader$1.run(Unknown Source) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.net.URLClassLoader.findClass(Unknown Source) at org.sonarsource.scanner.api.internal.IsolatedClassloader.loadClass(IsolatedClassloader.java:82) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) at org.sonarsource.scanner.api.internal.batch.DefaultBatchFactory.createBatch(DefaultBatchFactory.java:32) at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) at com.sun.proxy.$Proxy0.execute(Unknown Source) at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189) at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138) at org.sonarsource.scanner.cli.Main.execute(Main.java:112) at org.sonarsource.scanner.cli.Main.execute(Main.java:75) at org.sonarsource.scanner.cli.Main.main(Main.java:61) ERROR: ERROR: Re-run SonarScanner using the -X switch to enable full debug logging. D:\Git-Runners\s7\_work\_tool\Java_Adopt_jdk\11.0.23-9\x64\bin> Can you please suggest how can i get sonarqube scanning to work?
java.library.pathlooks weird. In fact it looks likePATH