我对maven来说是全新的,花了几个教程,并决定使用slf4j做一些日志记录,但是我一直收到一个错误,指出找不到该类。maven slf4j如何添加到类路径
经过一些互联网搜索,我试图添加插件等到我的pom.xml,但似乎没有任何工作。
例外情况是这样的:
java -cp target/MavenTest-1.0-SNAPSHOT.jar org.nilun.App
Hello World!
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at org.nilun.App.main(App.java:15)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
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
这里是我的pom.xml的片段
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
</dependencies>
很简单的类
package org.nilun;
import org.slf4j.*;
/**
* Hello world!
*
*/
public class App
{
public static void main(String[] args)
{
System.out.println("Hello World!");
Logger logger = LoggerFactory.getLogger(App.class);
logger.info("Hello World!");
}
}
的JAR文件位于我$ HOME/development/lib 当然它已经添加到我的eclipse构建路径
欢迎任何想法来解决这个问题。
谢谢!
不知道,但这个问题可能涉及到的相关性.jar文件无法导入到我打包jar文件。 –
是的,我认为你是对的。我编辑了我的答案,这就是你如何实现这一目标。 – Lupa