【发布时间】:2019-12-20 06:46:07
【问题描述】:
如何从已导出并转换为 .exe 文件的 java 文件中找到 CMD 当前所在的当前目录。
我不是在寻找当前的工作目录,因为它只会让我知道 .exe 文件的位置。
System.getProperty("user.dir") 不是我想要的。
与 new File(".") 相同
如果cmd是C:Users/User/Desktop然后我调用file.exe,我想知道C:Users/User/Desktop的路径,而不是file.exe的目录。
我通过以下方式将 Main.java 文件转换为 .exe:(使用 Eclipse) 导出为可运行的 Jar 文件 a s file.jar
Launch4j - 输出文件 = file.exe - Jar 运行时路径 = Jars/file.jar - 不包装 jar,仅启动
【问题讨论】:
-
这些答案只能让我知道可执行文件的位置,而不是 cmd 的执行位置。
-
文件 f = new File(""); System.out.println(f.getAbsolutePath());
-
它仍然只获取可执行文件所在的目录,而不是 cmd 执行的目录。
-
查看答案here
-
我认为转换为 .exe 文件可能是您遇到麻烦的原因,因为它可能会更改当前目录,这就是您会得到令人惊讶结果的原因。如果您使用 java .jar 而不是 exe 文件,那么获取 cmd 目录是否会按预期工作?
标签: java