Files

26 lines
1.1 KiB
C++
Raw Permalink Normal View History

2026-08-22 18:19:13 +03:00
#pragma once
#include <QString>
#include <QStringList>
namespace JavaLocator {
// Все java, которые удалось найти: рантайм самого Minecraft, JAVA_HOME, PATH,
// стандартные каталоги установки JDK/JRE. Без дублей, в порядке приоритета.
QStringList findAll(const QString &gameDir);
// Мажорная версия (8, 17, 21...) или 0, если запустить не удалось. Результат кешируется.
int majorVersion(const QString &javaPath);
// java.exe -> javaw.exe, чтобы игра не открывала окно консоли. На Unix возвращает вход.
QString windowlessVariant(const QString &javaPath);
// Выбирает java не ниже requiredMajor. preferred, если задан, проверяется первым.
// При неудаче возвращает пустую строку и заполняет error.
2026-08-22 23:39:46 +00:00
QString select(const QString &gameDir,
int requiredMajor,
const QString &preferred,
QString *error);
2026-08-22 18:19:13 +03:00
} // namespace JavaLocator