fix io.netty.native.workdir path error

This commit is contained in:
ShirosakiMio 2024-08-17 17:35:24 +08:00
parent 3e5fee1cfc
commit 85761d77a2
1 changed files with 7 additions and 1 deletions

View File

@ -183,7 +183,13 @@ public class DefaultLauncher extends Launcher {
configuration.put("${natives_directory}", "${natives_directory}");
List<String> jvmArgs = Arguments.parseArguments(version.getArguments().map(Arguments::getJvm).orElseGet(this::getDefaultJVMArguments), configuration);
res.addAll(jvmArgs.stream().filter(arg -> !arg.contains("-Djna.tmpdir=") && !arg.contains("-Dorg.lwjgl.system.SharedLibraryExtractPath=")).collect(Collectors.toList()));
res.addAll(jvmArgs.stream().map(arg -> {
String result = arg;
if (arg.contains("-Dio.netty.native.workdir") || arg.contains("-Djna.tmpdir") || arg.contains("-Dorg.lwjgl.system.SharedLibraryExtractPath")) {
result = arg.replace("${natives_directory}", FCLPath.CACHE_DIR);
}
return result;
}).collect(Collectors.toList()));
Arguments argumentsFromAuthInfo = authInfo.getLaunchArguments(options);
if (argumentsFromAuthInfo != null && argumentsFromAuthInfo.getJvm() != null && !argumentsFromAuthInfo.getJvm().isEmpty())
res.addAll(Arguments.parseArguments(argumentsFromAuthInfo.getJvm(), configuration));