在Maven IntelliJ项目中声明依赖项的多种方法

时间:2014-02-17 09:10:51

标签: java maven intellij-idea pom.xml

在IntelliJ的新Maven项目中,我看到了两种声明新依赖关系的方法:

  1. 手动编辑pom.xml文件,添加<dependency/>声明。 这自动(maven自动导入已启用)将Maven: ...个条目添加到项目.iml文件中,一切正常。
  2. 使用File -> Project Structure -> Dependencies菜单。 在.iml文件中创建条目。
  3. 这似乎是不受欢迎的行为。导入pom.xml Maven文件时,IntelliJ不会覆盖.iml文件,但从pom.xml合并依赖项,并从.iml合并其他定义的依赖项。

    我想强制一种在我的团队中添加依赖项的方法(仅使用pom.xml,对于外部mvn构建),并且绕过pom.xml并直接向.iml添加依赖项的能力会产生错觉。一个有效的构建(实际上,它不是)。

    我错过了什么吗?如何实施添加依赖项的一种方法? IntelliJ是否有一种方法可以将依赖项添加到pom.xml文件而不是.iml文件中?

    修改

    在这个问题(IntelliJ IDEA + Maven what is the need for dependency entries in an iml file?)中声称

      

    这也可用于在不更改pom.xml的情况下试验依赖项。请注意,您所做的所有修改都将在下一次Maven导入时恢复。

    但这不是我看到的行为。 .iml文件不会被还原,但会被合并。

2 个答案:

答案 0 :(得分:1)

听起来你需要一个continuous integration环境。

这不会阻止您的团队成员在错误的地方添加依赖项,但它会确保很早就发现并将其标记为需要将其添加到您的pom中,然后它归结为教育。< / p>

答案 1 :(得分:0)

Pom.xml仅供Maven使用,如果您已正确配置IDE,IntelliJ会从pom.xml获取依赖关系。但是,如果你想单独使用maven,你可以将罐子添加到你当地的maven仓库,然后通常通过pom.xml标签从你的<dependency>打电话。

您可以了解如何添加本地邮箱here