Я работаю над приложением для замены апплетов, которое должно запускаться под Java 1.8, поэтому я подписал все JAR с использованием доверенного сертификата и добавил атрибут Trusted-Library: true
в все их файлы MANIFEST.MF
.ClassNotFoundException, выпущенный в Java Web Start Приложение доверенной библиотеки
Мой 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, я получаю ClassNotFoundException
для класса (URIException
) в одном из кувшинов это приложение зависит от (commons-httpclient-3.0.1.jar
) ,
Я создал это приложение через NetBeans и сделал это успешно один раз раньше, но теперь по какой-то причине я не могу пройти мимо этой ошибки. Что я делаю не так?
1) Обязательно проверьте JNLP с помощью Джанель, доступный на моем [share drive] (https://drive.google.com/drive/#folders/0B5B9wDXIGw9lUnJaUjA2cmlVRE0). 2) После проверки без ошибок (игнорируйте предупреждения и оптимизации) удалите его и попробуйте приложение. еще раз. Если он все еще выдает ошибку, опубликуйте а) содержимое JNLP. б) структуру сервера, показывающего местоположение, если JNLP и Jars. –
Спасибо за ваш отзыв, Андрей. Я загрузил janela.jar с вашего Google Диска, но я не понимаю, как его использовать. Я просто запускаю его, т. Е. «Java janela.jar» и появляется графический интерфейс, или мне нужно указать имя JNLP-файла в команде? –
* «Я просто запускаю его». * Он имеет графический интерфейс и является исполняемым Jar, просто дважды щелкните его! Надеюсь, остальное должно стать ясным из элементов управления и надписей. –