问题
I have a box running SonarQube scanner. The default JDK is 7.
I need to run sonar-runner
using JDK 8 but I would like to keep the default JDK at 7.
I tried changing JAVA_HOME
before running sonar-runner
but had no luck. I also couldn't find any properties that can change that.
Any thoughts?
回答1:
Setting JAVA_HOME should work (see sonar-scanner source code if you're curious).
It's behaving well for me with SonarQube Scanner 2.6.1. Default on Java 7:
nico@deb-nico:~$ sonar-scanner
INFO: Scanner configuration file: /home/nico/sq_playground/sonar-scanner-2.6.1/conf/sonar-scanner.properties
INFO: Project root configuration file: NONE
INFO: SonarQube Scanner 2.6.1
INFO: Java 1.7.0_101 Oracle Corporation (64-bit)
Forcing to Java 8:
nico@deb-nico:~$ export JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre
nico@deb-nico:~$ sonar-scanner
INFO: Scanner configuration file: /home/nico/sq_playground/sonar-scanner-2.6.1/conf/sonar-scanner.properties
INFO: Project root configuration file: NONE
INFO: SonarQube Scanner 2.6.1
INFO: Java 1.8.0_91 Oracle Corporation (64-bit)
Looking good. Note that the SonarQube Scanner for Jenkins has a built-in option to let you choose which JDK the scanner should use.
来源:https://stackoverflow.com/questions/39105537/sonarqube-scanner-use-non-default-java