开发机器可以连接外网,Eclipse下Install项目正常,它可以顺利的从阿里云仓库update一些依赖的Jar包。
但是,我的调试环境位于内网,是不可以连接阿里云的。
这个时候,我期望在调试环境的eclipse中继续顺利的install我的项目,甚至debug一些接口参数等等,因为机器目录中留存有以前就down下来的maven本地仓,它位于c:\用户\.m2\repository目录下,并且我确认它一点也不比开发机器的本地仓库少,它没有理由不干活。
可是,当你重新遇到:
xxx.jar ... ...in offline mode and the artifact has not been download from it before
或者
”xxx“ is missing ,not found之类
倍感头疼:(
找了很多文章,大体认为这属于maven的一个bug,从3.0开始2013年就有了,但是直到3.9了现在还是没有被很好的解决。
自己总结的解决办法,暂且作为宝贵的资料吧:
删除本地仓库下面:
1)_remote.repositories文件
2).lastUpdated后缀的文件
3)确保c:\用户\.m2\setting.xml中加上<offline>true</offline> 以及把你的mirror选项aliyun仓库注释掉。
4)preferences---maven--User settings ,user settings 要选中c:\用户\.m2\setting.xml
5)点击一下下 Update settings ,让eclipse知道一下,你改过配置了
6) 选中你的项目,右键 maven---update project... ---> 选中Force update of snapshots ,Update project configuration from pom.xml ,clean projects ,refresh workspace resources from local file system.
7)然后,run configuration ,建立自己的maven build, 命令这样 clean install -Dgpg.skip
选中update snapshots ,skip tests ,non-recursive
8)点击 run ,就会看到 build seccuss了!
注意,如果有了新的jar包从aliyun上update了,那么就手动install到你调试机器内网这个机器吧。