Не рекомендуется каким-либо образом изменять эту стандартную конфигурацию. Но мы можем взглянуть на исходный код SonarQube. В этом файле вы можете найти этот код для чтения файла конфигурации:
private static Properties loadPropertiesFile(File homeDir) {
Properties p = new Properties();
File propsFile = new File(homeDir, "conf/sonar.properties");
if (propsFile.exists()) {
...
} else {
LoggerFactory.getLogger(AppSettingsLoaderImpl.class).warn("Configuration file not found: {}", propsFile);
}
return p;
}
Таким образом, conf-путь и имя файла жестко запрограммированы, и вы получите предупреждение, если файл не существует. Домашний каталог находится следующим образом:
private static File detectHomeDir() {
try {
File appJar = new File(Class.forName("org.sonar.application.App").getProtectionDomain().getCodeSource().getLocation().toURI());
return appJar.getParentFile().getParentFile();
} catch (...) {
...
}
Так что это тоже нельзя изменить. Код выше используется здесь:
@Override
public AppSettings load() {
Properties p = loadPropertiesFile(homeDir);
p.putAll(CommandLineParser.parseArguments(cliArguments));
p.setProperty(PATH_HOME.getKey(), homeDir.getAbsolutePath());
p = ConfigurationUtils.interpolateVariables(p, System.getenv());
....
}
Это говорит о том, что вы можете использовать параметры командной строки или переменные среды для изменения настроек.