Я пытаюсь создать .jar для своего приложения. Это приложение содержит много вещей, таких как другой .jar.
Использование этого плагина в моей конфигурации pom:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.rilent.App</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
А у меня есть эта ссылка на местную банку
...
<dependency>
<groupId>it.sauronsoftware.jave</groupId>
<artifactId>jave</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/jave-1.0.2.jar</systemPath>
</dependency>
Я использую эту команду для создания моего приложения, которое возвращает BUILD SUCCESS:
mvn clean compile assembly:single
но когда я пытаюсь выполнить мою программу, она в какой-то момент вылетает, возвращая эту ошибку:
Exception in thread "main" java.lang.NoClassDefFoundError: it/sauronsoftware/jave/InputFormatException
( a class from the .jar)
Я попытался распаковать мою главную банку, чтобы увидеть ее содержимое:
что плохого в том, как я создаю свою банку?
edit @ Торбьерн Равн Андерсен
Я тоже так пробовал, я добавил это к своему пом:
<!-- https://mvnrepository.com/artifact/com.jolira/onejar-maven-plugin -->
<dependency>
<groupId>com.jolira</groupId>
<artifactId>onejar-maven-plugin</artifactId>
<version>1.4.4</version>
</dependency>
затем я компилирую с mvn compile
, и когда я пытаюсь запустить .jar, я получаю эту ошибку
no main manifest attribute, in .\myapp-0.0.1-SNAPSHOT.jar
что я опять делаю не так ...?
Примечание: в моем банке также есть .exe