IntelliJ添加外部依赖后Maven项目Jar无法运行问题求助
Maven打包后无法找到主类的问题
开发环境:Java JDK 11 + IntelliJ IDEA
案例1:正常运行的Maven项目
创建简单Maven项目,编写Main类并添加main方法,代码如下:
package org.example; public class Main { public static void main(String[] args) { System.out.printf("Hello and welcome!"); for (int i = 1; i <= 5; i++) { System.out.println("i = " + i); } } }
对应的pom.xml内容:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>MyProject</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> </project>
将Main.java打包成Jar后,执行命令java -jar CreatedJarname.jar可成功运行并输出预期结果。
案例2:添加Spark依赖后打包运行失败
为使用Spark,通过IntelliJ IDEA UI添加外部依赖(包含activation-1.1.1 jar等243个文件),项目在IDE内可正常使用Spark功能,但pom.xml未发生更新,内容仍与案例1一致。此时打包相同代码生成Jar,执行相同命令java -jar CreatedJarname.jar时出现错误:
Error: Could not find or load main class org.example.Main
Caused by: java.lang.ClassNotFoundException: org.example.Main
添加外部依赖后Jar运行失败,且pom.xml未更新,无法找到解决方案,寻求帮助。
内容的提问来源于stack exchange,提问作者Anurag
相关产品推荐
相关产品推荐

