gpt4 book ai didi

java - 使用内部类从 Java applet 运行单独的进程

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:01:57 25 4
gpt4 key购买 nike

我需要从 Java applet 运行单独的进程。我想使用位于 jar 中的类:

myApplet.jar
- packagename.MainApplet.class
- packagename.ProcToRun.class

File MainApplet 有接口(interface) Applet 实现,我想从这段代码内部运行 ProcToRun 类作为单独的进程。 ProcToRun main 方法。

我试过这样的代码:

Process p = new ProcessBuilder("java", "-cp", ".;./myApplet.jar", ProcToRun.class.getName()).start();

和类似的(Runtime.exec(command),不同的符号 -\\,/或带有完整的 url),但我得到了:

Error: Could not find or load main class packagename.ProcToRun

Java.exe 可见,小程序已签名 - 拥有所有权限,使用 win 8.1,java 8 u 25。我认为类路径有问题,但我找不到解决方案。

最佳答案

Java 命令不能使用 URL 来让 Jar 运行,因此在尝试运行之前必须将 Jar 显式下载到本地文件系统。

但是在看到Process 时,有两个提示:

  1. 参见 When Runtime.exec() won't有关正确创建和处理流程的许多好技巧。然后忽略它引用 exec 并使用 ProcessBuilder 创建进程。
  2. 但是applet 应该建立一个指向Jar 的URLClassLoader,然后调用感兴趣的构造函数或main(String[])。如有必要,将调用包装在 SwingWorker 中。

关于java - 使用内部类从 Java applet 运行单独的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27858085/

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