JNLP - Как я могу развернуть свое приложение, которое запускается, и создать значок на рабочем столе для запуска a.jar? - PullRequest
0 голосов
/ 02 марта 2012

Как я могу исправить эту ошибку? У меня есть мой дистрибутив dist со всеми файлами jar, включенными в мой веб-сервер. Но как только я нажимаю icon.jnlp, он говорит, что ошибка.

icon.jnlp:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<jnlp codebase="http://localhost:007/dist" href="icon.jnlp" spec="1.0+">
  <information>
    <title>Sample</title>
    <vendor>Sample</vendor>
    <homepage href=""/>
    <description>Sample</description>
    <description kind="short">Sample</description>

    <icon href="load.png" kind="splash"/>
    <icon href="logo.png" kind="default"/>

    <shortcut online="false">
      <desktop/>
        <menu submenu="Sample">
          <menu submenu="Sample Managing System"/>
        </menu>
    </shortcut>
    <offline-allowed/>
  </information>

  <security>
    <all-permissions/>
  </security>

  <resources>
    <j2se version="1.5+"/>
    <jar eager="true" href="http://localhost:007/dist/a.jar" main="true"/>
  </resources>

  <application-desc main-class="main.main">
  </application-desc>

</jnlp>

enter image description here

Продолжение:

1) Загрузить JAR Maker (работает в Linux, Windows)

enter image description here

  • Петь все банки от третьих лиц
  • ваши развернутые банки

  • Выходной каталог: / var / tmp / project / dist

  • перейти на вкладку JAR Signer

    • входной файл jar: a.jar
      • расположение jarsigner: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/bin/jarsigner
      • файл хранилища ключей
      • если ключ не был создан> нажмите «Создать хранилище ключей» - расположение ключевого инструмента: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/bin/keytool - выходной файл хранилища ключей: / var / tmp / keystore - псевдоним хранилища ключей: запомнить это имя - открытый ключ: 123456 - закрытый ключ: 123456 - срок действия: 0 означает 6 месяцев - личность хранилища ключей - действительная информация ... - нажмите Сгенерировать хранилище ключей - он создаст / var / tmp / keystore и java.key.public и java.key
    • аутентификация хранилища ключей

      • псевдоним хранилища ключей: запомните это имя
      • открытый ключ: 123456
      • закрытый ключ: 123456
    • нажмите знак JAR! > скажет, если не удалось или успех

Повторите этот процесс для всех других файлов JAR, чтобы подписать !!

2) Развертывание на посадочной площадке

3) Убедитесь, что на вас ссылаются все ваши третьи лица

До:

  <resources>
    <j2se version="1.5+"/>
    <jar eager="true" href="http://localhost:007/dist/a.jar" main="true"/>
  </resources>

После того, как:

  <resources>
    <j2se version="1.5+"/>
    <jar eager="true" href="a.jar" main="true"/>
    <jar eager="true" href="lib/b.jar" main="flas"/>
    <jar eager="true" href="lib/c.jar" main="flas"/>
    <jar eager="true" href="lib/d.jar" main="flas"/>
    <jar eager="true" href="lib/e.jar" main="flas"/>
    <jar eager="true" href="lib/f.jar" main="flas"/>
    <jar eager="true" href="lib/g.jar" main="flas"/>
    <jar eager="true" href="lib/h.jar" main="flas"/>
    <jar eager="true" href="lib/i.jar" main="flas"/>
  </resources>

1 Ответ

2 голосов
/ 02 марта 2012

Обязательно проверьте JNLP, используя JaNeLA .

Должен ли я подписывать сейчас все мои другие банки третьих сторон?

Зависит от того, как они развернуты.Если они находятся в расширениях, расширение может иметь другой уровень безопасности.Если уровень безопасности находится в «песочнице», Jars не нужно подписывать.

Но тогда вы можете столкнуться с предупреждением о смешивании подписанных и неподписанных ресурсов.Я не уверен, если это применимо между расширениями.Есть способы обойти эти предупреждения, но я думаю, что проще развернуть все подписанные файлы Jar, независимо от уровня безопасности расширения, в котором они используются.

...