Eclipse:Maven搜索依赖项不起作用

问题描述 投票:88回答:8

我在一个新的Workspace中创建了一个新的简单Maven项目。

当我在Eclipse编辑器中打开pom.xmlDependencies视图时,我选择了Add..依赖项,无论我在搜索字段中输入什么搜索条件,都没有搜索结果:

它立即给我,例如,Results for 'spring' (0)

在我的其他工作区中,使用我现有的项目,我没有这个问题。

有办法解决这个问题吗?

eclipse maven maven-plugin maven-dependency-plugin
8个回答
179
投票

Eclipse工件搜索取决于存储库的索引文件。看来你没有下载索引文件。

转到Window - > Preferences - > Maven并选中“启动时下载存储库索引更新”。重新启动Eclipse,然后查看进度视图。应下载索引文件。

完全下载后,工件搜索即可使用。

更新您还需要在“maven存储库视图”中重建Maven存储库索引。

在此视图中,打开“Global Repositories”,右键单击“central”,选中“Full Index Enable”,然后在同一菜单中单击“Rebuild Index”。

将下载66M索引文件。


4
投票

如果您在公司代理中并且新项目未指向具有代理凭据的正确settings.xml文件,则可以获得此结果。

如果您使用Maven代理(例如Nexus),并且代理中的索引以某种方式混乱,您也可以获得此信息。我不知道如何解释如何解决这个问题。愚弄它或打电话给设置Maven代理的人。

如果新工作区尚未从Maven中心或代理下载索引,您也可以获得此信息。 (这是最好的一个,因为你只需要等待一段时间,它就能自行解决。)


4
投票

在你的eclipse中,转到Windows - > Preferences - > Maven Preferences Maven Screenshot勾选“在启动时下载存储库索引更新”选项。你可能想重启日食。

还可以转到Windows - >显示视图 - >其他 - > Maven - > Maven存储库Maven Repository View Screenshot

在Maven存储库面板上,展开全局存储库,然后右键单击Central存储库并选中“启用完全索引”选项,然后单击“重建索引”。

Full Index Screenshot


3
投票

maven添加依赖性实际上来自maven索引。如果索引是最新的,则结果应该来自那里。

如果你去maven资源库,然后选择全局资源库,你应该看到一个中心...选项卡,然后选择它,应该有一个文件夹列表,你应该能够从那里看到所有索引。如果没有,那么这意味着您没有获得完整索引,那么您可以右键单击它并启用完整索引。

我最烦恼的另一件事是,即使我做了所有事情,当我输入“spring”时它仍然没有显示任何内容。这实际上是我做错的地方。如果您只是键入一些额外的文本“springframework”,BOOM,结果就在那里。


3
投票

对于我来说,这个问题适用于:

  • 删除〜/ .m2
  • 在中央存储库的maven资源库视图中启用“Full Index Enabled”
  • 中央maven存储库中的“重建索引”

在eclipse重启后,一切运行良好。


1
投票

我也有同样的问题。上面提出的选项都不适合我。但是我发现,如果我让手动为org.springframework.spring-core版本4.3.4.RELEASE添加groupid / artifact / version并保存pom.xml,依赖项将自动下载并且搜索适用于已经存在的jar在存储库中。但是,如果我现在搜索当前依赖项中不存在的org.springframework.spring-context,则此搜索仍然无效。


0
投票

手动使用https://search.maven.org/和前缀fc:来搜索类名。 Netbeans和Eclipse似乎都太愚蠢了,无法使用该搜索界面,并且下载的存储库索引的千兆字节似乎不包含任何类信息。磁盘空间总浪费。这些IDE项目最近维护得非常糟糕,我希望他们能将开发转移到GitHub。


0
投票

有必要提供Group Id和Artifact Id来下载您需要的jar文件。如果你想搜索它,只需使用*,*表示这些字段。

© www.soinside.com 2019 - 2024. All rights reserved.