gpt4 book ai didi

java - 文件名、目录名或卷标语法不正确 java

转载 作者:行者123 更新时间:2023-12-02 07:44:57 32 4
gpt4 key购买 nike

所以我目前正在尝试将我拥有的安全证书添加到JavaKeystore中。我可以使用存储在字符串 temp 中的值在 cmd 上轻松执行此操作,但我希望能够在我的 java 代码中执行此操作。我使用以下代码来执行此操作,但收到以下错误文件名、目录名或卷标语法不正确。

    String java_Home = System.getProperty("java.home");
java_Home = java_Home + "\\lib\\security";
java_Home = java_Home.trim();

String temp = "..\\..\\bin\\keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias RandomKeyName -file C:\\Users\\Chris\\Desktop\\RandomKey.crt";
temp = temp.trim();

String[] commands = {"cmd.exe", "/c", "cd " + java_Home, temp};

ProcessBuilder builder = new ProcessBuilder(commands);
builder.redirectErrorStream(true);
Process p = builder.start();
builder.command();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) {
break;
}
System.out.println(line);
}

我查了一下这个错误,发现以下页面上的错误https://technet.microsoft.com/en-us/library/cc956689.aspx ..,但我还是没能解决这个问题。我知道它很小,但我就是看不到它。有谁知道如何解决这个问题吗?

最佳答案

  • 使用ProcessBuilder.directory设置工作目录(到 keytool 所在的位置),然后
  • 在构造函数中使用 keytool 作为命令,然后分别使用该程序的参数

ProcessBuilder的类文档有一个很好的例子

关于java - 文件名、目录名或卷标语法不正确 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37547452/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com