我用IntellijIDEA中的Maven
生成了一个jar
文件。尝试执行时,我收到以下错误消息:
线程“main”java中出现异常。lang.NoClassDefFoundError:org/apache/log4j/Logger
我只使用一个log4j
版本,1.2.17和java版本1.8.0_171。我也在pom.xml中设置了跳过测试:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
当您从IDEA运行它时,IDEA包含依赖项,您可以在IDEA的运行工具窗口中检查命令。但是当您生成一个jar并运行它时,它不包含依赖项。为了让它工作,你必须告诉Maven包含它们,其中一种方法是使用Apache Maven汇编插件,将build
部分添加到你的pom.xml:
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>package.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
我知道有很多关于这个例外的帖子,但是我不能解决这个问题。我认为必须编辑类路径来解决它。我试图在hadoop架构体系中运行一个名为远程地图的程序。这是我得到的错误。 Echo$CLASSPATH给出了一个空行 cat~/。bash_简介说 更新: $HADOOP_HOME $HADOOP_CLASSPATH 有人能帮我解决这个问题吗? 谢谢
jar-cvfe-dhj。jar DefaultHadoopJobDriver 我的Hadoop作业只有一个类“DefaultHoopJobDrive”,它扩展了配置和实现工具,并将方法作为作业创建和inputpath、outpurpath集的唯一代码运行。我也在使用新的API。
在创建hello world程序时,我遇到了这个异常。代码如下: 建造。渐变依赖项如下所示: 完整的stacktrace是这样的(我认为第一行是完全不相关的,但要确保):
我正在尝试编译并运行以下类: 我使用以下方法编译它: 但当我试图运行它时,我会遇到一个异常: java主 线程“main”java中出现异常。lang.NoClassDefFoundError:org/dom4j/io/SAXReader位于Main。main(main.java:31)由:java引起。lang.ClassNotFoundException:org。dom4j。木卫一。java的
我已经在我的pom.xml中添加了最新的硒依赖项 我用pom在目录中运行了mvn clean install。xml和我还根据Selenium文档在我的应用程序类中导入了正确的类 然而,当我尝试运行我的主方法时,我得到以下错误 我在我的~/. m2/repository文件夹中查看,我没有看到openqa文件夹,而是看到了seleniumhq文件夹。 为什么maven没有安装openqa文件夹,为
我有以下连接到neo4j db的应用程序: 当我尝试编译时,我得到了以下错误msg: 我做错了什么?如图所示,添加了neo4j库。