maven不同环境加载不同
作为顾问,我发现自己在不同的环境中需要不同的配置。 一种这样的配置与Maven设置文件有关。 该文件非常重要,因为它管理着服务器,镜像和代理之类的东西。 当您拥有笔记本电脑时,快速更改位置会从客户配置切换到家庭配置, 反之亦然 。 当您必须处理多个客户时,这将加剧噩梦和纠结的配置混乱。
在以前的环境中,同事通过使用专用的.bat覆盖参考文件来处理Eclipse ini文件切换,这是非常相似的问题。 我听说我的一位同事对Maven设置文件做的完全相同。 它可以完成工作,但它不是便携式的,不但具有侵入性,而且有些东西我不能完全依靠它来解决。
作为IT人士,我很懒惰但很理想,所以我以一种我认为更优雅的方式挠头解决了这个问题。 我想我可能已经通过Maven命令本机CLI找到了一个。 如果运行mvn --help
,您将获得大量的CLI选项:转到-s
部分。
-s,--settings <arg> Alternate path for the user settings file
这意味着Maven允许您使用〜/ .m2 / settings.xml以外的设置文件。 因此,您可以创建settings-cust.xml
,为该客户设置所有需要的配置,然后运行mvn -s ~/.m2/settings-cust.xml
。
而且由于我真的很懒,所以我在~/.bash_profile
添加了以下代码片段,使我的生活更加轻松:
alias mvncust='mvn -s ~/.m2/settings-cust.xml'
现在,我只需要运行mvncust
即可使用该环境的所有相关配置来运行Maven。 并且与其他选项兼容!
到目前为止,我发现的唯一缺点是我必须在Eclipse的m2e中显式设置设置文件,但这并没有让我感到困扰,因为我为我的每个环境都有一个专用的Eclipse实例(用于配置和插件)。
翻译自: https://blog.frankel.ch/maven-between-different-environments/
maven不同环境加载不同