>PROBLEM
Running the executable jar with dependencies generated by maven plugin fails throwing the error message:
java -jar myApp-0.0.1-SNAPSHOT-jar-with-dependencies.jar
- Returns:
..Caused by: java.lang.ClassNotFoundException..
>SOLUTION
1. Check the main class path in the pom.xml file.
Note: there are alternative plugins to generate executable jars.
See more at:
How to Create an Executable JAR with Maven
Below is shown one of the options:
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>package.appName.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
2. If the plugins's configuration is correct, check the dependencies included in the project's pom.
For instance, if it was included lombok as shown below, remove it and test again:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
>ENV
java
spring
maven
No comments:
Post a Comment