文章目录

  • 报错背景
  • 报错详情
  • 报错剖析
  • 解决办法
  • 总结

报错背景

微服务中两个子工程相互依赖时,出现程序包不存在找不到目标类

报错详情

maven-compiler-plugin:3.8.1:compile (default-compile) @ gtw ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 3 source files to /Users/cuizongbao/code/cloud-alibaba-demo/gtw/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Users/cuizongbao/code/cloud-alibaba-demo/gtw/src/main/java/com/cuizb/cloud/alibaba/gtw/controller/GtwServiceImpl.java:[3,39] 程序包com.cuizb.dubbo.demoservice.api不存在
[ERROR] /Users/cuizongbao/code/cloud-alibaba-demo/gtw/src/main/java/com/cuizb/cloud/alibaba/gtw/controller/GtwServiceImpl.java:[29,13] 找不到符号符号:   类 DubboDemoService位置: 类 com.cuizb.cloud.alibaba.gtw.controller.GtwServiceImpl
[INFO] 2 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE

报错剖析

  1. 包路径是否正常
  2. pom.xml是否引入
  3. jar包是否冲突

结果发现都正常。

但是就是没有依赖。最后发现是spring-boot-maven-plugin它的问题。

解决办法

spring-boot-maven-plugin这个插件打包的Jar包可以直接运行,但是不可依赖。所以interface自始至终就没有依赖,自然会说找程序包不存在或者找不到类

修改pom.xml的maven插件配置

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- 解决没有main函数报错unable to find main class 的问题--><executions><execution><phase>none</phase></execution></executions><configuration><classifier>execute</classifier></configuration></plugin></plugins></build>

总结

一个微服务通常有两个子module,一般一个写实体类和接口一个写实现方法

  • common类、实体类、被被依赖的类,打包插件配置为
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- 解决没有main函数报错unable to find main class 的问题--><executions><execution><phase>none</phase></execution></executions><configuration><classifier>execute</classifier></configuration></plugin></plugins></build>
  • 其他类或者微服务可以正常配置:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins>
</build>

本文作者:Java技术债务
原文链接:https://www.cuizb.top/myblog/article/1648107069
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 3.0 CN协议进行许可。转载请署名作者且注明文章出处。

maven install时报错:程序包不存在以及找不到类相关推荐

  1. IDEA maven install 报错:程序包不存在

    maven install 程序包com.waper.common不存在 原因是: 多模块引用时报错,就是说打包时要依赖com.waper.common common模块被其他的模块引入,maven ...

  2. java maven程序包不存在_Maven install 报错程序包不存在问题的解决方法

    概述 在mvn clean install时,控制台各种报错,大概有: java:[8,52] 程序包com.xxx不存在 java:[98,27] 找不到符号 符号: 类 XXX 位置: 类XXX ...

  3. maven install时报错 dependencies.dependency.version' for cn.e3mall:e3-manager-pojo:jar is missing.

    报错信息: 我的项目结构为: 在打包pojo时报错 原因是在本地仓库找不到e3-parent jar包 (当然联网时中央仓库也不找到我自己写的jar包) 解决方法:先将父工程 install 将其依赖 ...

  4. maven项目pom.xml文件Maven install时报错

    欢迎加入JavaWeb开发交流群:群号:1062758224 [WARNING] The artifact org.apache.commons:commons-io:jar:1.3.2 has be ...

  5. idea运行程序报错 程序包不存在,找不到符号解决方法

    如果是这样引入的依赖项目 解决办法: 删除掉模块,用在项目中用idea的 alt+enter 提示进行依赖项目 用这种提示依赖可行

  6. 针对maven install 报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1 解决方案...

    项目运行环境:jdk1.8+tomcat8 maven install 时报错:Failed to execute goal org.apache.maven.plugins:maven-compil ...

  7. DEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在

    DEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在 问题描述 springboot 项目打包(package)或安装到仓库(install)的时候报错:程序包com.fu ...

  8. Maven打包时出现程序包不存在和test相关报错

    Maven打包时出现程序包不存在和test相关报错 1.程序包不存在的问题 例如打包失败后报错情况如下: 程序可编译执行,但是打包存在问题.通过查看maven列表可以看到相关依赖包也导入成功,可能是m ...

  9. pip install 时报错 ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问(已解决)

    pip install 时报错 ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问(已解决) ...

最新文章

  1. 计算机二级python用什么书-如何准备全国计算机二级Python?
  2. pycharm 如何导入、导出设置?
  3. div+css 单行或者多行超出文本,数字,字母长度自动省略
  4. html字符串变量,字符串变量中的Python HTML
  5. 栈的顺序存储及实现(二)
  6. 利用swoole coroutine协程实现redis异步操作
  7. 试用cmd markdown
  8. 小马哥-Java 微服务实践 - Spring Boot 系列-01Java 微服务实践 - Spring Boot 系列(一)初体验...
  9. 用windows命令开启远程桌面
  10. PIC单片机软件平台----MPLAB IDE和MPLAB X IDE
  11. python程序设计基础与应用 机械工业出版社_Python程序设计——从编程基础到专业应用...
  12. 印象笔记如何分享链接_【记录】试用印象笔记最新的笔记分享出页面的功能
  13. Visio中添加、移动或删除形状上的连接点的方法
  14. c语言键盘连续双击程序,“到处乱跑”的光标!简单的C语言程序: 在室友的计算机上尝试!...
  15. 基础篇:6.1)公差标注的进化
  16. 【2014-3】day3 T1 五彩斑斓
  17. 1字节是多少位,汉字utf-8又占多少。
  18. 2022年欧盟的寒冬,中国外贸企业送温暖(暖冬外贸商品都在这里)
  19. smzdm 扫地机器人_2020年双十二有什么值得购买的扫地机器人,科沃斯T8、米家1T、石头T7,还有什么推荐的品牌吗?...
  20. 共享单车数据集超10万条

热门文章

  1. 金正昆老师的商务礼仪---第四讲 交际交往中的礼仪理念
  2. python for循环流程图_python for循环语句结构与用法实例(图)
  3. sqlserver数据库 导入方法
  4. php curl nginx 报错,【Docker】docker,nginx,php使用curl报错?
  5. canvas 制作flappy bird(像素小鸟)全流程
  6. 梭的顺序存储结构及C语言实现
  7. 破案现场:记一次压测异常排查--Redisson锁失效的场景
  8. 如何用STAR方法做好ERP项目选型?
  9. 戴尔6850服务器维修,Dell EMC PowerEdge 服务器 故障处理指南
  10. 用html和css做动态动物,分享9款用HTML5/CSS3制作的动物、人物动画