1

我一直在开发一个必须在 Java 1.8 下运行的小程序替换应用程序,因此我使用受信任的证书对所有 JAR 进行了签名,并将该属性添加Trusted-Library: true到它们的所有MANIFEST.MF文件中。

我的 JNLP 看起来像这样:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<jnlp codebase="http://localhost:8080/myWebApp/myApp/
"href="myAppLaunch.jnlp" spec="1.0+">
    <information>
        <title>My JWS Application</title>
        <vendor>My Company</vendor>
        <homepage href=""/>
        <description>This application is an applet replacement that needs to satisfy the requirements of a High Security setting in a Java 1.8 environment</description>
        <description kind="short">My App</description>
    </information>
    <update check="always"/>
    <security>
<all-permissions/>
</security>
    <resources>
        <j2se version="1.7+"/>
        <jar href="myApp.jar" main="true"/>
    <jar href="lib/commons-httpclient-3.0.1.jar"/>
<jar href="lib/commons-logging-1.1.jar"/>
<jar href="lib/commons-codec-1.3.jar"/>
<jar href="lib/dmapiclientlib-1.3.03.jar"/>
<jar href="lib/mail.jar"/>
<jar href="lib/activation.jar"/>
<jar href="lib/log4j-1.2.17.jar"/>
<jar href="lib/datedFileAppender-1.0.2.jar"/>
</resources>
    <application-desc main-class="com.myCompany.myApp.myMainClass">
    <argument>action=myAction</argument>
</application-desc>
</jnlp>

当我通过 Java Web Start 启动应用程序时,我在该应用程序所依赖的一个 JAR 中获得了ClassNotFoundException一个类 ( ) ( )。URIExceptioncommons-httpclient-3.0.1.jar

我一直在通过 NetBeans 构建此应用程序,并且以前曾成功完成过一次,但现在由于某种原因,我无法克服此错误。我究竟做错了什么?

4

1 回答 1

1

我相信我遇到的问题源于在 JAR 签名后更改 JAR 文件(通过添加受信任的库属性)

于 2016-11-08T19:47:04.080 回答