Maven-webstart-plugin для включения зависимостей времени выполнения - PullRequest
6 голосов
/ 31 августа 2011

При создании jnlp с помощью подключаемого модуля maven-webstart я обнаружил, что зависимости времени выполнения не были включены в jnlp.

Я использую такой шаблон:

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="$jnlpspec" codebase="${url}/${appName}" href="${outputFile}">
    <information>
        <title>${appName}</title>
        <vendor>$project.Organization.Name</vendor>
        <homepage href="${url}/${appName}"/>
        <offline-allowed/>
    </information>
    <security>
        <all-permissions/>
    </security>
    <resources>
        <j2se version="$j2seVersion"/>
        $dependencies
    </resources>
    <application-desc main-class="${main}" />
</jnlp>

Как включить зависимости времени выполнения? Ну, я могу включить их все по отдельности:

<plugin>
    <groupId>org.codehaus.mojo.webstart</groupId>
    <artifactId>webstart-maven-plugin</artifactId>
    <configuration>
      <dependencies>
        <includes>
          <include>groupId:artifactId</include>
          ...
        </includes>
      </dependencies>
      ...
    </configuration>
  </plugin>

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

Есть ли способ указать плагину включить все зависимости времени выполнения?

Ответы [ 2 ]

1 голос
/ 31 мая 2012

Таким образом, получается, что по умолчанию включены все зависимости компиляции и среды выполнения.

Что происходит?

Что ж, я также использую ant для развертывания jnlp на сервере, и в файле ant $dependencies настраивался с использованием mvn:dependencies, а область действия не указывалась как среда выполнения.Таким образом, добавление области действия изменяет набор файлов $dependencies, который включен в файл jnlp.

0 голосов
/ 11 октября 2011

Я использую родительскую конфигурацию pom, где одним из модулей является стартовый веб-проект. Мне нравится, чтобы это было как можно меньше. У меня есть компиляция зависимостей только для библиотеки журналов, основного модуля приложения (еще один модуль в той же структуре родительского pom) и файлов JAR, включая собственные двоичные файлы. В дополнение к этим зависимостям компиляции у меня есть некоторые тестовые зависимости и системная зависимость от локального файла javaws.jar.

Похоже, что плагин веб-запуска maven включает в себя любые зависимости времени выполнения от модулей, которые включены в веб-стартовый проект как зависимость компиляции. Возможно, вам удастся разделить проект подобным образом.

По поводу родных двоичных файлов. Мне пришлось немного изменить шаблон скорости, чтобы получить эти зависимости как nativelib вместо ресурсов jar.

...