mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2025-09-23 03:07:09 -04:00
FindJavaPaths: fix sdkman search, add asdf search (#4163)
This commit is contained in:
commit
9c9e0d2945
@ -379,10 +379,19 @@ QList<QString> JavaUtils::FindJavaPaths()
|
||||
auto home = qEnvironmentVariable("HOME");
|
||||
|
||||
// javas downloaded by sdkman
|
||||
QDir sdkmanDir(FS::PathCombine(home, ".sdkman/candidates/java"));
|
||||
QStringList sdkmanJavas = sdkmanDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
|
||||
QString sdkmanDir = qEnvironmentVariable("SDKMAN_DIR", FS::PathCombine(home, ".sdkman"));
|
||||
QDir sdkmanJavaDir(FS::PathCombine(sdkmanDir, "candidates/java"));
|
||||
QStringList sdkmanJavas = sdkmanJavaDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
|
||||
for (const QString& java : sdkmanJavas) {
|
||||
javas.append(sdkmanDir.absolutePath() + "/" + java + "/bin/java");
|
||||
javas.append(sdkmanJavaDir.absolutePath() + "/" + java + "/bin/java");
|
||||
}
|
||||
|
||||
// javas downloaded by asdf
|
||||
QString asdfDataDir = qEnvironmentVariable("ASDF_DATA_DIR", FS::PathCombine(home, ".asdf"));
|
||||
QDir asdfJavaDir(FS::PathCombine(asdfDataDir, "installs/java"));
|
||||
QStringList asdfJavas = asdfJavaDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
|
||||
for (const QString& java : asdfJavas) {
|
||||
javas.append(asdfJavaDir.absolutePath() + "/" + java + "/bin/java");
|
||||
}
|
||||
|
||||
// java in user library folder (like from intellij downloads)
|
||||
@ -468,7 +477,11 @@ QList<QString> JavaUtils::FindJavaPaths()
|
||||
// javas downloaded by IntelliJ
|
||||
scanJavaDirs(FS::PathCombine(home, ".jdks"));
|
||||
// javas downloaded by sdkman
|
||||
scanJavaDirs(FS::PathCombine(home, ".sdkman/candidates/java"));
|
||||
QString sdkmanDir = qEnvironmentVariable("SDKMAN_DIR", FS::PathCombine(home, ".sdkman"));
|
||||
scanJavaDirs(FS::PathCombine(sdkmanDir, "candidates/java"));
|
||||
// javas downloaded by asdf
|
||||
QString asdfDataDir = qEnvironmentVariable("ASDF_DATA_DIR", FS::PathCombine(home, ".asdf"));
|
||||
scanJavaDirs(FS::PathCombine(asdfDataDir, "installs/java"));
|
||||
// javas downloaded by gradle (toolchains)
|
||||
scanJavaDirs(FS::PathCombine(home, ".gradle/jdks"));
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user