maven install报错中程序包xxx不存在的问题解决

 更新时间:2022年05月05日 15:03:41   作者:wu55555  
本文主要介绍了maven install报错中程序包xxx不存在的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

问题

项目是springcloud项目,在maven install某一个项目时报错:

程序包com.example.commons.application不存在

解决

1、依赖未声明或者未下载成功

首先出现这个问题最常见的原因是jar包未引入,需要在pom中引入对应的jar包,其次检查这个包是否声明版本,且对应的包是否下载成功,如果下载不成功会在pom中爆红

2、引用的是本地模块,但是未打包到本地maven仓库

需要注意的是如果是引入的本地的其他模块,那么需要先将被引用的这个模块先maven install 打包到本地仓库。然后当前模块才能正常引入到这个模块

3、父子项目包名不一致

这个问题原因也是我这里遇到的原因,不注意的话很难排查,父项目中声明的包名是org.xxx,但是子项目中声明的包名却是com.xxx

在pom中将父子模块的包名统一即可

<groupId>org.xxx</groupId>

注意事项

修改完成后打包时需要注意,可能你再次打包还是报错,这是因为我们给子项目打包时需要引入父项目,而父项目报错,所以打不上。

而给父项目打包又因为modules里面声明了子项目,而子项目报错,所以又会导致父项目打不上。

这父子都打不了那怎么办呢?答案是想让他们暂时断绝下父子关系

1、先在父项目pom的modules中将改子项目的module删掉,然后打包父项目,因为没有了报错的子项目那么父项目是可以打包成功的。

<modules>
        <module>common</module>
        <module>gateway</module>
<!--        <module>service</module>-->
<!--        <module>service-api</module>-->
</modules>

2、然后再来打包子项目,需要注意的是子项目中要通过parent标签声明父项目

<parent>
        <groupId>com.example</groupId>
        <artifactId>fleet_manager_system1</artifactId>
        <version>0.0.1-SNAPSHOT</version>
</parent>

3、然后再回到父项目中将删除的子项目的module恢复,再次打包父项目,这时因为没有子项目报错,那么父项目也能成功打包了

<modules>
        <module>common</module>
        <module>gateway</module>
<!--        <module>service</module>-->
        <module>service-api</module>
    </modules>

4、如果有多个子项目打包不成功了,那么就通过上述的步骤循环往复,最终就会迎来我们所期待的BUILD SUCCESS

4、maven仓库路径不对

开发工具中打包的maven仓库的地址不对,通过settings>Build,Execution,Deployment>Build Tools>Maven中的Local repository项可以查看到开发工具中配置的本地Maven仓库地址,检查这个地址是否是你真实的maven仓库地址。

有一个检查的方式,就是直接进入到该路径下,看看有没有对应包名路径的.jar文件,如果有则说明配置正确,如果没有说明并没有可能是路径不对,也可能是上述原因1,2

5、重启idea

有时因为开发工具的问题,可能会导致一直加载不出来,如果实在找不到问题所在时,不妨尝试重启开发工具,甚至重启电脑,可能有奇效。

6、清空target目录

有时因为开发工具问题,可能target目录一直未刷新,所以在maven install之前,先执行maven clean将历史数据清空下再打包

到此这篇关于maven install报错中程序包xxx不存在的问题解决的文章就介绍到这了,更多相关maven install报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何利用SpringAOP的返回通知处理数据加密返回

    如何利用SpringAOP的返回通知处理数据加密返回

    这篇文章主要介绍了如何利用SpringAOP的返回通知处理数据加密返回,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2024-12-12
  • 使用SpringBoot AOP 记录操作日志、异常日志的过程

    使用SpringBoot AOP 记录操作日志、异常日志的过程

    这篇文章主要介绍了使用SpringBoot AOP 记录操作日志、异常日志的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-05-05
  • SpringBoot之groups应对不同的Validation规则自定义方式

    SpringBoot之groups应对不同的Validation规则自定义方式

    这篇文章主要介绍了SpringBoot之groups应对不同的Validation规则自定义方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Spring Cloud调用Ribbon的步骤

    Spring Cloud调用Ribbon的步骤

    Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。本文将讲述Spring Cloud调用Ribbon的方法
    2021-05-05
  • java split用法详解及实例代码

    java split用法详解及实例代码

    这篇文章主要介绍了java split用法的相关资料,并附实例代码,帮助大家学习参考,需要的朋友可以参考下
    2016-09-09
  • Java Scanner的使用和hasNextXXX()的用法说明

    Java Scanner的使用和hasNextXXX()的用法说明

    这篇文章主要介绍了Java Scanner的使用和hasNextXXX()的用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 详解springboot读取yml配置的几种方式

    详解springboot读取yml配置的几种方式

    这篇文章主要介绍了详解springboot读取yml配置的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • Spring MVC请求转发与请求重定向的示例详解

    Spring MVC请求转发与请求重定向的示例详解

    转发指服务器接收请求后,从一个资源跳转到另一个资源中,请求转发是一次请求,不会改变浏览器的请求地址,这篇文章主要介绍了Spring MVC请求转发与请求重定向的相关知识,需要的朋友可以参考下
    2023-09-09
  • spring cloud config和bus组件实现自动刷新功能

    spring cloud config和bus组件实现自动刷新功能

    今天通过本文给大家介绍spring cloud config和bus组件实现自动刷新功能,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-10-10
  • Java使用Tinify实现图片无损压缩(4M无损压缩到1M)的方法

    Java使用Tinify实现图片无损压缩(4M无损压缩到1M)的方法

    在当今的数字化时代,图片已成为网站、应用和社交媒体中不可或缺的元素,然而,大尺寸的图片不仅会增加页面或者客户端加载时间,还会占用大量的存储空间,本文将详细介绍如何利用Tinify压缩图片,并将其上传至OSS,重点介绍图片压缩实现方式,需要的朋友可以参考下
    2024-08-08

最新评论