解决Maven build打包,类找不到,找不到引用的那个项目里面的类问题

 更新时间:2026年02月07日 08:52:36   作者:孟夏草木长  
文章讨论了在使用Maven构建项目时遇到类找不到的问题,并给出了解决方法,主要原因是公共项目被打成了可执行的jar,导致其他项目无法引用其中的类,解决方法包括在公共项目的pom中将打包类型改为普通jar,以及在主项目中正确引用公共项目

Maven build打包,类找不到,找不到引用的那个项目里面的类

[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[39,38] 程序包com.jeesite.modules.crm.entity不存在
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[40,39] 程序包com.jeesite.modules.crm.service不存在
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[43,38] 找不到符号
[ERROR]   符号:   类 Company
[ERROR]   位置: 程序包 com.jeesite.modules.sys.entity
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[44,38] 找不到符号
[ERROR]   符号:   类 EmpUser
[ERROR]   位置: 程序包 com.jeesite.modules.sys.entity
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[45,38] 找不到符号
[ERROR]   符号:   类 Employee
[ERROR]   位置: 程序包 com.jeesite.modules.sys.entity
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[46,38] 找不到符号
[ERROR]   符号:   类 HrDuty
[ERROR]   位置: 程序包 com.jeesite.modules.sys.entity
[ERROR] /D:/cloud-2/siban/system-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[47,38] 找不到符号
[ERROR]   符号:   类 Office
[ERROR]   位置: 程序包 com.jeesite.modules.sys.entity
[ERROR] /D:/cloud-2/sibansystem-manage/src/main/java/com/jeesite/modules/sys/web/user/EmpUserController.java:[48,38] 找不到符号
[ERROR]   符号:   类 Post

解决

1.原因

是因为那个公共的项目被打成了可执行的jar,然后其他项目引用它,就找不到它里面的类的,在公共项目的pom里面加入如下代码,就可以变成普通的jar

<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<classifier>exec</classifier>
					<source>1.8</source>
			        <target>1.8</target>
			        <encoding>UTF-8</encoding>
				</configuration>
			</plugin>

2.主项目要加入对公共项目的引用

如下面这种,然后打包就不会报类找不到的问题了

3.打包时,先打公共包(引用的那个包)

要maven install,不能maven build,否则打主包又报类找不到,打主包时,才是maven build

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论