1

我基本上在这里尝试做的是运行一个 .jar 文件,该文件位于

C/Users/-any user here-/appdata/Roaming/-my folder here-/-file name here-.jar

我是否以某种方式打开 CMD 并执行以下操作:

cd appdata/Roaming/<Folder>
java -jar <FileName>.jar

当我将它输入 CMD 本身时,这似乎有效。从 java 程序运行时,我似乎无法使其工作。

我试着做:

Runtime.getRuntime().exec("cd appdata/Roaming");

而且我收到指定目录不存在的错误。

4

2 回答 2

4

使用绝对路径而不是相对路径,这样可以防止从任何工作目录运行时找不到路径。否则,如 Nizil 所说,将其添加到您的类路径中。

要获取当前用户的名称,请使用System.getProperty("user.name")并连接到您的路径中。

user = System.getProperty("user.name");
cmd = "java -jar C/Users/" + user + "/appdata/Roaming/<folder>/<file>.jar";
Runtime.getRuntime().exec(cmd);
于 2013-07-17T07:30:21.757 回答
3

您只需在类路径中添加 jar 的路径(不要忘记使用绝对路径),然后main在代码中调用 jar 的方法。但是,此解决方案是特定于用户的,因为路径将被硬编码,除非您想深入研究更棘手的问题(如何在 java 中更改类路径)。

于 2013-07-17T07:26:14.507 回答