1
我試圖創建jinjava應用: 的src/main/JAVA/COM /公司/ Main.javaJinjava第一個應用程序拋出java.lang.ClassNotFoundException
package com.company;
import com.hubspot.jinjava.Jinjava;
public class Main {
public static void main(String[] args) {
Jinjava jinjava = new Jinjava();
}
}
和pom.xml中的一部分(感謝SOF,我不能完全將它張貼):
<repositories>
<repository>
<id>osssonatype</id>
<name>OSS Sonatype</name>
<url>https://repo1.maven.org/maven2/</url>
<layout>default</layout>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.hubspot.jinjava</groupId>
<artifactId>jinjava</artifactId>
<version>2.1.14</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>21.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>com.company.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
<finalName>jj4</finalName>
</build>
</project>
但經過 「MVN全新安裝」 和 「Java的罐子目標/ jj4.jar」 我越來越:
Exception in thread "main" java.lang.NoClassDefFoundError: com/hubspot/jinjava/Jinjava
at com.company.Main.main(Main.java:12)
Caused by: java.lang.ClassNotFoundException: com.hubspot.jinjava.Jinjava
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
怎麼了?
你不能(通過使用裝配插件實例)建立一個「胖」 JAR,所以你的依賴不會被包含在你的'jj4.jar'文件,因此'ClassNotFoundException' – Tome
謝謝!我已經使用maven-shade-plugin來做到這一點,現在它構建。 – aranel
如果您使用eclipse導出作爲可運行jar以及它是否正常工作。 –