解决maven打包失败:程序包xxxx不存在问题

 更新时间:2022年03月08日 09:57:13   作者:Java小白白又白  
这篇文章主要介绍了解决maven打包失败:程序包xxxx不存在问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

用Maven引入本地jar包这种做法非常不合理,很容易导致团队jar包混乱,最好尝试搭建私服解决。

1.问题实质

Maven仓库jar包下载失败或项目引入本地jar包Maven没有对应进行配置

2.问题原因

(1)因网络或其他原因导致Maven下载jar包到本地仓库失败

(2)项目引入本地jar包,只在编译器里进行了配置而没有在Maven中进行配置

3.解决步骤

(1)查看对应出错jar包的本地Maven仓库jar包是否下载完整

如果如上图所示将文件删掉重新下载即可。

(2)如果出现在编译器中可以找到jar包,但是用Maven打包报错:

就要查看一下项目是否引入本地jar包但Maven没有对其进行配置。

解决方案1

找到存放第三方jar包文件夹 (例如src/main/webapp/WEB-INF/lib)右键AddasLibrary加入项目运行库:

然后配置Maven打包插件扫描额外jar包

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArgs>
            <arg>-verbose</arg>
            <arg>-Xlint:unchecked</arg>
            <arg>-Xlint:deprecation</arg>
            <arg>-bootclasspath</arg>
            <arg>${env.JAVA_HOME}/jre/lib/rt.jar</arg>
            <arg>-extdirs</arg>
            <arg>${project.basedir}/src/main/webapp/WEB-INF/lib</arg>
        </compilerArgs>
    </configuration>
</plugin>

其中${project.basedir}为项目根结点

图片引自:https://www.jb51.net/article/240010.htm,此方法多人尝试成功但笔者没有解决。

解决方案2

修改pom文件,引入依赖并且将scope设置为system

配置Maven打包插件

此方法亲测可行,但笔者引入的本地jar数量太多,一个一个写估计会累死。

解决方案3

将jar包安装至本地仓库后使用pom文件直接引入,进入需要引入的jar目录,执行以下命令

mvn install:install-file -Dfile=druid-1.1.4.jar -DgroupId=com.alibaba -DartifactId=druid -Dversion=1.1.4 -Dpackaging=jar

执行后在本地仓库中看到如下文件,说明安装成功

此方法亲测可行,理由同上,引入本地jar太多。

解决方案4

哪个模块找不到jar包就单独rebuild一下这个model,注意rebuild之后不要用maven的clean

rebuild完成之后再重新install

简单粗暴,方便快捷,非常适合维护老项目。新项目就别这么搞了,老老实实建私服吧。

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

相关文章

  • 在SpringBoot中配置MySQL数据库的详细指南

    在SpringBoot中配置MySQL数据库的详细指南

    在 Spring Boot 中配置数据库是一个相对简单的过程,通常涉及到以下几个步骤:添加数据库驱动依赖、配置数据源属性、以及可选的配置 JPA(如果使用),下面是小编给大家编写的一个详细的指南,以MySQL 数据库为例,需要的朋友可以参考下
    2024-12-12
  • Java获取链接上的参数三种方法举例

    Java获取链接上的参数三种方法举例

    在Java中,我们经常需要从URL链接中获取参数,下面这篇文章主要给大家介绍了关于Java如何获取链接上参数的三种方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-06-06
  • Spring Boot Actuator使用说明

    Spring Boot Actuator使用说明

    SpringBootActuator 是一个用于监控和管理 Spring Boot 应用程序的强大工具,通过引入依赖并配置,可以启用默认的监控接口,本文介绍Spring Boot Actuator的使用,感兴趣的朋友一起看看吧
    2025-02-02
  • java中-jar 与nohup的对比

    java中-jar 与nohup的对比

    这篇文章主要介绍了java中 -jar 与nohup的对比的相关资料,需要的朋友可以参考下
    2017-05-05
  • java拓展集合工具类CollectionUtils

    java拓展集合工具类CollectionUtils

    这篇文章主要为大家详细介绍了java拓展集合工具类CollectionUtils,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • IntelliJ IDEA(或者JetBrains PyCharm)中弹出

    IntelliJ IDEA(或者JetBrains PyCharm)中弹出"IntelliJ IDEA License

    今天小编就为大家分享一篇关于IntelliJ IDEA(或者JetBrains PyCharm)中弹出"IntelliJ IDEA License Activation"的解决办法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Java使用Tinify实现图片无损压缩(4M无损压缩到1M)的方法

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

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

    Maven忽略单元测试及打包到Nexus的实现

    我们的工程在打包发布时候,通常都需要忽略单元测试,以免因环境原因,无法通过单元测试而影响发布,本文主要介绍了Maven忽略单元测试及打包到Nexus的实现,感兴趣的可以了解一下
    2024-04-04
  • JDK自带的序列化方式优缺点及实现原理面试精讲

    JDK自带的序列化方式优缺点及实现原理面试精讲

    这篇文章主要为大家介绍了JDK自带的序列化方式优缺点及实现原理面试精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • SpringMVC拦截器创建配置及执行顺序

    SpringMVC拦截器创建配置及执行顺序

    这篇文章主要为大家介绍了SpringMVC拦截器创建配置及执行顺序,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05

最新评论