idea在离线情况下使用repository仓库后编译一直显示Could not transfer artifact org.springframew

因公司项目版本控制,需在无网络环境下用Idea编译项目,但一直无法加载本地仓库,而是去网上中央仓库下载。文章指出暴力删除本地仓库文件不能从根本解决问题,应在setting.xml里配置相应内容,将本地仓库路径写入idea安装目录下的settings.xml,确保离线状态能读取本地仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看了几十篇博客都大同小异,硬是没有解决离线使用仓库这个问题

问题:因公司项目版本控制原因,只能在无网络的环境下编译,每次由开发提供本地的repository仓库,由配置管理员直接解压加载进行打包编译。当从idea2021下载的仓库给idea2019使用,虽然要使用的依赖本地包中都有,但是编译时显示一直有依赖找不到,每次都是直接跨过本地仓库,直接去网上的中央仓库下载。

然后问题简要概括就是: 一直无法加载本地仓库,直接根据默认自带配置中的链接去网上中央仓库下载。

下面的这篇文章对maven配置文件讲解很详细,其实看完这个就可以知道解决大半问题的地方在哪了

maven全局配置文件settings.xml详解 - 静默虚空 - 博客园

好多博客上好多暴力删除本地仓库所有的 _remote.repositories 文件的这种误导人的办法怎么会大批量出现,完全没有从根上解决问题。虽然能解决问题,但是也有很多风险。应该建议直接在setting.xml里根据需要去配置相应的东西,从根本上解决这个问题。

 

 即使是在user setting files中配置了仓库地址,idea2019也可能不会去本地仓库去找,这可能是idea2019的一个bug.

此时应该直接去idea安装目录下的 maven home path 下的settings.xml中去把本地仓库路径写入,这样才会生效,具体路径在下面这个位置:

D:\Programs\JetBrains\IntelliJ IDEA 2021.2.3\plugins\maven\lib\maven3\conf\settings.xml

这个路径是idea的安装目录

配置文件中有说,本地仓库的设置方式

 我们直接在这个后面追加一下地址就好

  <!-- 本地仓库地址-->
<localRepository>${user.home}/.m2/repository</localRepository>
<!-- 离线网络设置,false为离线状态,true为在线状态-->
<offline>false</offline>

 然后这样就可以确保idea2019在离线的状态下也能读取到本地仓库。

 之后就可以顺利的clean\package\install等操作了,不同的项目,选择对应项目的不同仓库完全没有问题

备注:这个是因为网络安全,以及不同项目版本控制的需求,只能在无网环境下进行。。。所以靠人力区分搞得本办法,实在是想不出来什么好招了)。

 

-------------------------------------------------------以下无正文--------------------

注:仅供学习,记录问题和参考,共勉!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值