问题描述
因此,每次我在pom.xml
使用maven为库添加依赖项时,在我转到模块设置然后单击“修复”之前,它不会被部署。
当我添加freemarker时发生了这种情况。
为什么IDEA不为我这样做? 我错过了一步吗?
1楼
不确定以前的版本,但使用IntelliJ 9,当我修改pom.xml时,IntelliJ向我显示Import Changes链接,并提供启用自动导入 :
也提供了自动导入选项: 文件>设置> Maven>导入>自动导入Maven项目 。
2楼
IDEA将所有模块的依赖项存储在.iml或.classpath文件中(根据您的偏好)。
更改pom.xml文件时,需要解析新的依赖项集(重新导入)并相应地更新文件。 我只能想象他们不会自动为你做这个,因为他们永远不会真正知道你什么时候使用该文件,并且当你还在打字时导致依赖关系的解决将使得使用pom.xml在想法非常恼人。
AFAIK,你做对了。 在我的IDEA版本中,我看到pom文件编辑器中出现的“重新导入”按钮(可以节省几次点击)...或者您可以转到“Maven项目”窗口并单击“重新导入”。 “导入Maven项目”按钮,但这些应该与项目设置中的“修复”按钮完全相同。
3楼
原始问题涉及未部署的库 -
IntelliJ使用工件将构建输出和所需的库部署到应用程序/ Web服务器,并且当前那些可以包括常量的依赖项列表。 单击“修复”只会将模块依赖项添加到工件中(如果它们尚未存在)。
因为在大多数用例中这是1:1,即工件包含所有模块依赖项,我已经为它打开了一个功能问题: