运行 没有 Java Web Start 的 Java Web Start 应用程序

Running a Java Web Start application without Java Web Start

我想 运行 作为 Java Web 启动应用程序交付的胖客户端,没有 Java Web 启动。我通过 javaws 启动它,并在下载后设法从缓存中获取 JNLP 文件中提到的所有 jar 文件。

我尝试根据 JNLP 文件 运行 包含主要 class 的 jar 文件,但我得到 'Could not find or load main class' 错误。如果我只是想 运行 class 我会相应地设置 class 路径,但是因为我 运行 使用 java 创建一个 jar 文件 - jar,据我所知 classpath 设置无论如何都会被忽略。现在我不确定该怎么办,有人知道如何解决这个问题吗?

我现在自己来回答这个问题,事实证明这很简单:获取所有 jar 文件,解压缩它们以获取内容,合并所有内容(最好使用 rsync 完成),创建一个新的 MANIFEST.MF 文件,其中包含要加载的主要 class 和所有 MANIFEST.MF 文件中所有现有文件的合并哈希值,再次压缩以创建一个 jar。就是这样。