idea使用联网缓存的pom进行离线开发

一个一直要频繁在线调试的项目,需要内网开发,外网某些接口无法使用,没办法面对这么高的调试频率,只能把开发环境搬到内网环境了,第一次这么操作,搞这套方案自己在虚拟机里面搞了一个无网环境测试出来的方案,简单记录一下,新手可能看不懂,有经验的看下应该能有帮助的,这个方案从头开始尝试着搞,大概耗时3个小时不断尝试,唉,说多都是泪T_T。

联网环境下执行,记得先清空local的文件,否则到时候复制仓库的时候文件会很大。

执行离线下载命令:mvn dependency:go-offline

检查本地仓库是否存在:

此处是我项目用到的,自己项目自己替换检查。

E:\maven\local\org\springframework\spring-framework-bom\5.3.19\spring-framework-bom-5.3.19.pom

E:\maven\local\org\springframework\security\spring-security-bom\5.7.12\spring-security-bom-5.7.12.pom

E:\maven\local\org\springframework\boot\spring-boot-dependencies\2.5.15\spring-boot-dependencies-2.5.15.pom

下载所有的插件:

mvn dependency:resolve-plugins
清理干扰文件(非常非常非常重要):

下载完成后,删除 _remote.repositories.lastUpdated 文件
PowerShell执行:

Get-ChildItem -Path "E:\maven\local" -Include "_remote.repositories", "*.lastUpdated" -Recurse | Remove-Item -Force
这些文件会记录"从哪个 repo 下载",如果 repo ID 不匹配,Maven 会拒绝使用本地文件。

离线环境:

勾选脱机工作,复制联网环境的maven文件夹到离线环境。

离线模式清空构建:

mvn -o clean -f pom.xml

无报错,成功启动。

相关推荐
摆烂且佛系3 小时前
IDEA Maven 仓库配置优先级
github·maven·intellij-idea
小池先生3 小时前
用vscode查日志方便的搜索-复制所有匹配行功能
ide·vscode·编辑器
Автомата Калашникова3 小时前
Java操作.docx文档 —— docx4j
java·开发语言
hello 早上好3 小时前
深入 Spring 条件化配置底层:从硬编码到通用注解的实现原理
java·后端·spring
亚林瓜子3 小时前
Spring中Date日期序列化与反序列化中格式设置
java·后端·spring·jackson·date
GISer_Jing3 小时前
Next.js数据获取演进史
java·开发语言·javascript
DokiDoki之父4 小时前
Web核心—JSP入门/EL/JSTL标签/MVC+三层架构/一文速通
java·开发语言
寒月霜华4 小时前
java-高级技术(单元测试、反射)
java·开发语言·单元测试·反射
独自破碎E4 小时前
Leetcode2166-设计位集
java·数据结构·算法