那些日子我很难学习Maven,这似乎比学习我所知道的所有4-5种编程语言更难。然而,第一步已经完成,我成功地在Eclipse中使用m2eclipse插件构建了第一个基于Jersey的Java REST服务项目。当我尝试这样做时,我添加了一堆全局存储库,其中大多数都是不相关或不正确的,不知何故,我将它们全部添加到'Effective POM'而不是项目POM,因此全局存在大量垃圾存储库。现在的问题是:
如何编辑/管理“有效POM”以删除这些存储库?我尝试使用内置的POM编辑器执行此操作,但它将其显示为只读,还尝试通过“Maven存储库”选项卡删除它们,但根本没有这样的选项。
也许有一些方法可以手动编辑它,全局POM在文件系统中的位置?
在“有效POM”中,我可以看到在<repository>
和<pluginRepository>
标记中重复添加的存储库。这些标签有什么区别?如果我手动删除它们,我应该删除它们吗?
答案 0 :(得分:6)
"Effective POM" is what Maven constructs when it parses your project。它由您的POM及其(大)父POM组成。文件系统本身不存在有效POM,运行Maven构建时即时生成 - 因此视图为“只读”。
换句话说 - 您尚未将这些存储库添加到您的Effective POM,,而是添加到项目的祖先POM之一,或者由mvn和/或Eclipse 解决one of the settings.xml files。从那里删除那些条目,你的问题将得到解决。