新项目 + 切换分支 + 别人提交代码 导致IDEA爆红
# 这条命令可以解决
mvn clean install -Dmaven.test.skip=true -U
为啥Maven install 可以解决爆红,而package无法解决
maven install 可以更新本地的maven私服依赖。
package只是打包到本地,不会更新maven本地仓库的包!
先说下idea的工作流程:通过pom.xml找到本地私服中包依赖,(如果本地仓库没有,先从远程拉取到本地仓库)。然后你代码中的 import 去与实际依赖包去对比。如果不一致,就会爆红。
你们项目有个a包。某人提交一份a包的代码。你可能爆红的原因:你本地仓库的a包没有新提交代码的部分。所以你本地爆红,解决办法,是利用你本地最新的代码,install到本地私服。这样本地maven仓库也是最新的,爆红就解决了。
强制私用本地仓库
Maven的setting.xml配置了,在构建项目的时候,有些时候还是会去远程仓库获取,这样非常影响打包速度。在Maven打包时,您可以通过使用Maven的"offline"参数来强制使用本地仓库内容。这将告诉Maven在构建过程中不要尝试从远程仓库下载依赖,而是仅使用本地仓库中已经存在的依赖。
-o 等价于 --offline 是强制使用本地仓库!
mvn clean install -Dmaven.test.skip=true -o
指定配置文件 -s
mvn clean install -Dmaven.test.skip=true -o -s settings-use-local-repository.xml
指定本地仓库 -Dmaven.repo.local
命令版
-Dmaven.repo.local=/path/to/custom/local/repo
配置版
配置setting.xml下的<settings> 标签内添加!
<localRepository>/path/to/your/local/repository</localRepository>
绕错test包下内容
- 使用
-DskipTests:会编译测试代码,但不执行测试。 - 使用
-Dmaven.test.skip=true:完全跳过测试的编译和执行。
特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取最新全部资料 ❤
免责声明: 本站文章旨在总结学习互联网技术过程中的经验与见解。任何人不得将其用于违法或违规活动!所有违规内容均由个人自行承担,与作者无关。
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取最新全部资料 ❤
免责声明: 本站文章旨在总结学习互联网技术过程中的经验与见解。任何人不得将其用于违法或违规活动!所有违规内容均由个人自行承担,与作者无关。
