diff --git a/src/main/java/org/rococy/roomit/util/AutoStartFile.java b/src/main/java/org/rococy/roomit/util/AutoStartFile.java index 90e119a..852428c 100644 --- a/src/main/java/org/rococy/roomit/util/AutoStartFile.java +++ b/src/main/java/org/rococy/roomit/util/AutoStartFile.java @@ -31,8 +31,26 @@ public class AutoStartFile { private static void generate() { try { - if (new File(START_UP_FILE_PATH).exists()) { - return; + + StringJoiner fileContentJoiner = new StringJoiner("\n"); + String driveLetter = AUTO_START_EXEC_FILE_PATH.substring(0, 2); + fileContentJoiner.add("@echo off"); + fileContentJoiner.add(driveLetter); + fileContentJoiner.add("cd " + ResourceUtils.getResourceByProject("")); + fileContentJoiner.add("RoomIt"); + String fileContent = fileContentJoiner.toString(); + + File startUpFile = new File(START_UP_FILE_PATH); + + if (startUpFile.exists()) { + FileInputStream is = new FileInputStream(startUpFile); + boolean isSame = new String(is.readAllBytes()).equals(fileContent); + + is.close(); + + if (isSame) { + return; + } } File file = new File(BAT_FILE_PATH); @@ -43,12 +61,6 @@ public class AutoStartFile { FileWriter fos = new FileWriter(file); - StringJoiner fileContentJoiner = new StringJoiner("\n"); - String driveLetter = AUTO_START_EXEC_FILE_PATH.substring(0, 2); - fileContentJoiner.add("@echo off"); - fileContentJoiner.add(driveLetter); - fileContentJoiner.add("cd " + ResourceUtils.getResourceByProject("")); - fileContentJoiner.add("RoomIt"); fos.write(fileContentJoiner.toString()); fos.flush();