java - 在 Linux 上运行 jar 文件时出现此错误 - 线程 "main"java.lang.NoClassDefFoundError : org/apache/log4j/Logger 中的异常

标签 java linux log4j

我创建了一个 java 项目,当我从 NetBeans 运行它时,它运行正常并执行预期的操作,但是当我将它移动到 Linux 服务器上时,它给出了以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger
    at arhivare.Arhivare.<clinit>(Arhivare.java:29)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 1 more

它与我包含在项目中的 log4j 库有关(它在 Netbeans 中运行)。我缺少什么?

最佳答案

 public static final Logger logger = Logger.getLogger(Arhivare.class);

这是我初始化记录器的方式,运行应用程序的命令是: java -jar ArhivareProd.jar

关于java - 在 Linux 上运行 jar 文件时出现此错误 - 线程 "main"java.lang.NoClassDefFoundError : org/apache/log4j/Logger 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57004506/

相关文章:

linux - MEM_SHARED、mmap 和硬链接(hard link)

每次 Python Pygame 文本叠加打印在其自身之上

java - 在 Java 中将值附加到列表的元素

java - 将 Applet 添加到 JFrame

linux - bash 上的 GAMESS 配置脚本错误 : syntax error near $<

java - 如何覆盖 log4j 中的日志文件?

java - 虚拟 log4j 配置(用于测试)

java - log4j 中每次都重写到相同的日志文件

java - java 中的继承有令人困惑的输出

java - RxJava - 在完成之前触发另一个 Observable/Completable 并且仅在完成之后触发