Плагин Maven webstart не видит основной класс - PullRequest
0 голосов
/ 06 июня 2019

Я хочу использовать com.mylibrary.startup.Main в качестве основного класса в приложении веб-запуска.

Этот класс принадлежит к jar-файлу, который добавляется как зависимость от времени компиляции:

<dependency>
    <groupId>com.mylibrary</groupId>
    <artifactId>mylibrary-startup</artifactId>
    <version>1.8.3</version>
</dependency>

Основной класс добавляется в конфигурацию:

<build>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>webstart-maven-plugin</artifactId>
      <version>1.0-beta-7</version>
      <executions>
        <execution>
          <id>jnlp-auth</id>
          <phase>site</phase>
          <goals>
            <goal>jnlp</goal>
          </goals>
          <configuration>
            .......
            <jnlp> 
              <mainClass>com.mylibrary.startup.Main</mainClass>
            </jnlp>
          </configuration>
 .......
<build>

Странная ситуация с использованием webstart-maven-plugin.Кажется, что он не находит класс (см. Пример 1).Но давайте сделаем грязный хак и добавим класс с точно таким же именем в текущий проект, и появится предупреждение о конфликте с классом из зависимости (см. Пример 2).

Не могли бы выпомогите настроить сборку, чтобы webstart-плагин смог найти основной класс?

  • Пример 1 (невозможно найти класс)

    [INFO] --- webstart-maven-plugin:1.0-beta-7:jnlp (jnlp-auth) @ my-app
    [INFO] --------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] --------------------------------------------------------------
    [INFO] Total time: 02:40 min
    [INFO] Finished at: 2019-06-06T14:40:51+05:00
    [INFO] Final Memory: 96M/1448M
    [INFO] --------------------------------------------------------------
    
    [ERROR] Failed to execute goal 
            org.codehaus.mojo:webstart-maven-plugin:1.0-beta-7:jnlp (jnlp-auth) on 
            project ksiemp: didn't find artifact with main class: 
            com.mylibrary.startup.Main. Did you specify it?  -> [Help 1]
    
            org.apache.maven.lifecycle.LifecycleExecutionException:
            Failed to execute goal org.codehaus.mojo:webstart-maven-plugin:1.0-beta-7:jnlp (jnlp-auth) on project ksiemp: didn't find artifact with main class: com.mylibrary.startup.Main. Did you specify it? 
    
  • Образец 2 (обнаружен повторяющийся класс)

    [INFO] --- webstart-maven-plugin:1.0-beta-7:jnlp-inline (jnlp-noauth) @ my-app---
    [WARNING] artifact com.mylibrary:mylibrary-startup:jar:1.8.3:compile 
              also contains the main class: com.mylibrary.startup.Main. IGNORED.
    
...