Skip to content

Commit c5f56eb

Browse files
authored
清理 OperatingSystem (#3925)
1 parent 0900ad3 commit c5f56eb

9 files changed

Lines changed: 12 additions & 30 deletions

File tree

HMCL/src/main/java/org/jackhuang/hmcl/Launcher.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ public static void stopWithoutPlatform() {
296296
Controllers.getStage().close();
297297
Schedulers.shutdown();
298298
Controllers.shutdown();
299-
Lang.executeDelayed(OperatingSystem::forceGC, TimeUnit.SECONDS, 5, true);
299+
Lang.executeDelayed(System::gc, TimeUnit.SECONDS, 5, true);
300300
});
301301
}
302302

HMCL/src/main/java/org/jackhuang/hmcl/java/JavaManager.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import org.jetbrains.annotations.Nullable;
4242

4343
import java.io.BufferedReader;
44+
import java.io.File;
4445
import java.io.IOException;
4546
import java.nio.file.*;
4647
import java.util.*;
@@ -411,7 +412,7 @@ private static Map<Path, JavaRuntime> searchPotentialJavaExecutables() {
411412

412413
// Search in PATH.
413414
if (System.getenv("PATH") != null) {
414-
String[] paths = System.getenv("PATH").split(OperatingSystem.PATH_SEPARATOR);
415+
String[] paths = System.getenv("PATH").split(File.pathSeparator);
415416
for (String path : paths) {
416417
try {
417418
tryAddJavaExecutable(javaRuntimes, Paths.get(path, OperatingSystem.CURRENT_OS.getJavaExecutable()));
@@ -421,7 +422,7 @@ private static Map<Path, JavaRuntime> searchPotentialJavaExecutables() {
421422
}
422423

423424
if (System.getenv("HMCL_JRES") != null) {
424-
String[] paths = System.getenv("HMCL_JRES").split(OperatingSystem.PATH_SEPARATOR);
425+
String[] paths = System.getenv("HMCL_JRES").split(File.pathSeparator);
425426
for (String path : paths) {
426427
try {
427428
tryAddJavaHome(javaRuntimes, Paths.get(path));

HMCL/src/main/java/org/jackhuang/hmcl/ui/GameCrashWindow.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ private void exportGameCrashInfo() {
265265
Path logFile = Paths.get("minecraft-exported-crash-info-" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH-mm-ss")) + ".zip").toAbsolutePath();
266266

267267
CompletableFuture.supplyAsync(() ->
268-
logs.stream().map(Log::getLog).collect(Collectors.joining(OperatingSystem.LINE_SEPARATOR)))
268+
logs.stream().map(Log::getLog).collect(Collectors.joining("\n")))
269269
.thenComposeAsync(logs ->
270270
LogExporter.exportLogs(logFile, repository, launchOptions.getVersionName(), logs, new CommandBuilder().addAll(managedProcess.getCommands()).toString()))
271271
.handleAsync((result, exception) -> {

HMCLCore/src/main/java/org/jackhuang/hmcl/download/forge/ForgeNewInstallTask.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@
4141
import org.jackhuang.hmcl.util.io.FileUtils;
4242
import org.jackhuang.hmcl.util.platform.CommandBuilder;
4343
import org.jackhuang.hmcl.java.JavaRuntime;
44-
import org.jackhuang.hmcl.util.platform.OperatingSystem;
4544
import org.jackhuang.hmcl.util.platform.SystemUtils;
4645
import org.jetbrains.annotations.NotNull;
4746

@@ -140,7 +139,7 @@ public void execute() throws Exception {
140139
classpath.add(file.toString());
141140
}
142141
classpath.add(jar.toString());
143-
command.add(String.join(OperatingSystem.PATH_SEPARATOR, classpath));
142+
command.add(String.join(File.pathSeparator, classpath));
144143

145144
command.add(mainClass);
146145

HMCLCore/src/main/java/org/jackhuang/hmcl/download/neoforge/NeoForgeOldInstallTask.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
import org.jackhuang.hmcl.util.io.FileUtils;
3838
import org.jackhuang.hmcl.util.platform.CommandBuilder;
3939
import org.jackhuang.hmcl.java.JavaRuntime;
40-
import org.jackhuang.hmcl.util.platform.OperatingSystem;
4140
import org.jackhuang.hmcl.util.platform.SystemUtils;
4241
import org.jetbrains.annotations.NotNull;
4342

@@ -136,7 +135,7 @@ public void execute() throws Exception {
136135
classpath.add(file.toString());
137136
}
138137
classpath.add(jar.toString());
139-
command.add(String.join(OperatingSystem.PATH_SEPARATOR, classpath));
138+
command.add(String.join(File.pathSeparator, classpath));
140139

141140
command.add(mainClass);
142141

HMCLCore/src/main/java/org/jackhuang/hmcl/launch/DefaultLauncher.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ private Command generateCommandLine(File nativeFolder) throws IOException {
255255
// Provided Minecraft arguments
256256
Path gameAssets = repository.getActualAssetDirectory(version.getId(), version.getAssetIndex().getId());
257257
Map<String, String> configuration = getConfigurations();
258-
configuration.put("${classpath}", String.join(OperatingSystem.PATH_SEPARATOR, classpath));
258+
configuration.put("${classpath}", String.join(File.pathSeparator, classpath));
259259
configuration.put("${game_assets}", gameAssets.toAbsolutePath().toString());
260260
configuration.put("${assets_root}", gameAssets.toAbsolutePath().toString());
261261

@@ -434,7 +434,7 @@ protected Map<String, String> getConfigurations() {
434434
pair("${resolution_width}", options.getWidth().toString()),
435435
pair("${resolution_height}", options.getHeight().toString()),
436436
pair("${library_directory}", repository.getLibrariesDirectory(version).getAbsolutePath()),
437-
pair("${classpath_separator}", OperatingSystem.PATH_SEPARATOR),
437+
pair("${classpath_separator}", File.pathSeparator),
438438
pair("${primary_jar}", repository.getVersionJar(version).getAbsolutePath()),
439439
pair("${language}", Locale.getDefault().toString()),
440440

@@ -444,7 +444,7 @@ protected Map<String, String> getConfigurations() {
444444
// when we propose this placeholder.
445445
pair("${libraries_directory}", repository.getLibrariesDirectory(version).getAbsolutePath()),
446446
// file_separator is used in -DignoreList
447-
pair("${file_separator}", OperatingSystem.FILE_SEPARATOR),
447+
pair("${file_separator}", File.separator),
448448
pair("${primary_jar_name}", FileUtils.getName(repository.getVersionJar(version).toPath()))
449449
);
450450
}

HMCLCore/src/main/java/org/jackhuang/hmcl/util/StringUtils.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
*/
1818
package org.jackhuang.hmcl.util;
1919

20-
import org.jackhuang.hmcl.util.platform.OperatingSystem;
21-
2220
import java.io.PrintWriter;
2321
import java.io.StringWriter;
2422
import java.util.*;
@@ -42,7 +40,7 @@ public static String getStackTrace(Throwable throwable) {
4240
public static String getStackTrace(StackTraceElement[] elements) {
4341
StringBuilder builder = new StringBuilder();
4442
for (StackTraceElement element : elements)
45-
builder.append("\tat ").append(element).append(OperatingSystem.LINE_SEPARATOR);
43+
builder.append("\tat ").append(element).append(System.lineSeparator());
4644
return builder.toString();
4745
}
4846

HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/OperatingSystem.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import org.jackhuang.hmcl.util.platform.windows.WinTypes;
2323

2424
import java.io.BufferedReader;
25-
import java.io.File;
2625
import java.io.IOException;
2726
import java.io.InputStreamReader;
2827
import java.nio.charset.Charset;
@@ -85,10 +84,6 @@ public String getJavaExecutable() {
8584
*/
8685
public static final OperatingSystem CURRENT_OS = parseOSName(System.getProperty("os.name"));
8786

88-
public static final String PATH_SEPARATOR = File.pathSeparator;
89-
public static final String FILE_SEPARATOR = File.separator;
90-
public static final String LINE_SEPARATOR = System.lineSeparator();
91-
9287
/**
9388
* The system default charset.
9489
*/
@@ -296,16 +291,6 @@ public static boolean isWindows7OrLater() {
296291
return IS_WINDOWS_7_OR_LATER;
297292
}
298293

299-
@SuppressWarnings("removal")
300-
public static void forceGC() {
301-
System.gc();
302-
try {
303-
System.runFinalization();
304-
System.gc();
305-
} catch (NoSuchMethodError ignored) {
306-
}
307-
}
308-
309294
public static Path getWorkingDirectory(String folder) {
310295
String home = System.getProperty("user.home", ".");
311296
switch (OperatingSystem.CURRENT_OS) {

HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/SystemUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ private SystemUtils() {
4747
return null;
4848

4949
try {
50-
for (String item : path.split(OperatingSystem.PATH_SEPARATOR)) {
50+
for (String item : path.split(File.pathSeparator)) {
5151
try {
5252
Path program = Paths.get(item, command);
5353
if (Files.isExecutable(program))

0 commit comments

Comments
 (0)