【问题标题】:Is it possible to execute a jar within an Applet?是否可以在 Applet 中执行 jar?
【发布时间】:2014-12-20 10:33:06
【问题描述】:

是否可以在 Applet 中启动/运行/执行 jar?如果可能,我该怎么做?

【问题讨论】:

标签: java jar applet classpath


【解决方案1】:

是的,有可能(但不简单)。

它需要一个带有自定义安全管理器的签名且受信任的小程序来处理加载档案的安全性。这些步骤将遵循这些路线。

  • 设置自定义安全管理器。
  • 建立一个指向 Jar 的 URL。
  • 为 URL 建立 URLClassLoader
  • 加载类并实例化它。
  • 调用main(String[])方法。

【讨论】:

    【解决方案2】:

    我假设你也可以这样问:

    • “Applet 能否启动最初在 Applets 类路径中不可用的 Java 类?”

      => 我会说不。因此,有可能使用 Java,Applets 安全策略将拒绝执行此操作所需的操作(例如,下载/存储/操作 CP,在执行客户端的上下文中调用 Jar)。

    所以我看到的唯一方法是拥有一个允许在文件系统上运行的签名的小程序,因此将能够下载远程 Jar 并启动它。

    【讨论】:

    • 我认为你是对的。我认为您描述的签名,下载然后开始的方式是要走的路。你可能有我的示例代码吗?
    • 我已经考虑过这个解决方案,但我不知道该怎么做。当然,我稍后会使用官方签名的 Applet。您是否有示例或示例代码说明如何执行此操作?我可以运行“Runtime.getRuntime().exec("java -jar my_app.jar");”带有签名的小程序?我已经在本地计算机上尝试过将此页面添加到站点列表,但它没有执行此命令。是因为没有签名吗?
    • 非常感谢您的回答。我解决了问题并让 jar 在小程序中运行,太棒了!
    猜你喜欢
    • 1970-01-01
    • 2015-04-16
    • 2023-03-27
    • 2019-09-18
    • 2017-06-20
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 2014-10-02
    相关资源
    最近更新 更多