【Bug收割机】已解决使用maven插件打包成功,在控制台使用mvn命令打包失败问题详解,亲测有效!

前言

在maven项目中,大家经常会使用maven插件来打包项目文件

在这里插入图片描述
但是有的人也习惯使用mvn命令在控制台直接进行打包,因为这样可以自定义组装一些命令,使用起来也更加灵活方便,比如mvn package -Dmaven.test.skip=true命令就可以在打包的时候跳过单元测试的编译。

在这里插入图片描述

但是最近在使用的过程中发现第一种打包方式没有任何的问题,第二种打包就会频频失败,报以下错误

[ERROR] Failed to execute goal on project xxx: Could not resolve dependencies for project com.xxx.cloud.xxx:xxxx-xxxx:jar:3.8.6: The following artifacts could not be resolved: javax.jms:jms:jar
:1.1 (absent): Could not transfer artifact javax.jms:jms:jar:1.1 from/to maven-default-http-blocker (http://0.0.0.0/): Blocked mirror for repositories: [maven-public (http://192.168.0.111:8081/repository/maven-public/, default, releases+snapshots)]

问题分析

首先可以肯定的是我们之前配置的私服配置肯定是没有问题的,要不然第一种打包方式也不可能成功。那么问题的关键,我们就需要搞清楚第二种方式到底有没有走我们的私服呢?

打开我们的idea 的配置

在这里插入图片描述

可以发现我们即指定了settings文件和本地的仓库地址,又使用了本地的maven路径。看到这儿,问题就逐渐清晰了,因为 maven 插件使用的是图中的 User settings file配置的文件,而mvn命令使用的则是Maven home path路径下的maven安装包下的/conf下的settings 文件。

报错原因

我们打开maven安装包下的/conf下的settings 文件,发现里边并没有指定我们的私有maven仓库地址,而是采用的默认的配置,所以在打包的时候一直提示找不到对应的jar包导致失败。

解决方法

  • 方法1:将我们的私有maven仓库地址配置到该settings文件中;
  • 方法2:直接将 User settings file配置的文件覆盖到maven安装包下的/conf 路径下

私域

添加阿Q微信,回复“外块”,进入专属外块群(人数满200人之后需要入群费,先到先得!),在这里可以

  • 参与前沿技术社区的体验、宣发活动;
  • 获取大型线下技术交流会的门票,并获得与大佬面对面交流的机会;
  • 支持大型商务企业策划并推广内容传播策略;
  • 群里还会不定期举办赠送技术书籍的活动;

回复“技术”进入专属技术群,与志同道合的朋友畅所欲言。好看的皮囊千篇一律,有趣的灵魂万里挑一,欢迎添加阿Q好友,围观阿Q的朋友圈。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿Q说代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值