我在一个新的Workspace中创建了一个新的简单Maven项目。
当我在Eclipse编辑器中打开pom.xml
的Dependencies
视图时,我选择了Add..
依赖项,无论我在搜索字段中输入什么搜索条件,都没有搜索结果:
它立即给我,例如,Results for 'spring' (0)
。
在我的其他工作区中,使用我现有的项目,我没有这个问题。
有办法解决这个问题吗?
Eclipse工件搜索取决于存储库的索引文件。看来你没有下载索引文件。
转到Window - > Preferences - > Maven并选中“启动时下载存储库索引更新”。重新启动Eclipse,然后查看进度视图。应下载索引文件。
完全下载后,工件搜索即可使用。
更新您还需要在“maven存储库视图”中重建Maven存储库索引。
在此视图中,打开“Global Repositories”,右键单击“central”,选中“Full Index Enable”,然后在同一菜单中单击“Rebuild Index”。
将下载66M索引文件。
如果您在公司代理中并且新项目未指向具有代理凭据的正确settings.xml文件,则可以获得此结果。
如果您使用Maven代理(例如Nexus),并且代理中的索引以某种方式混乱,您也可以获得此信息。我不知道如何解释如何解决这个问题。愚弄它或打电话给设置Maven代理的人。
如果新工作区尚未从Maven中心或代理下载索引,您也可以获得此信息。 (这是最好的一个,因为你只需要等待一段时间,它就能自行解决。)
maven添加依赖性实际上来自maven索引。如果索引是最新的,则结果应该来自那里。
如果你去maven资源库,然后选择全局资源库,你应该看到一个中心...选项卡,然后选择它,应该有一个文件夹列表,你应该能够从那里看到所有索引。如果没有,那么这意味着您没有获得完整索引,那么您可以右键单击它并启用完整索引。
我最烦恼的另一件事是,即使我做了所有事情,当我输入“spring”时它仍然没有显示任何内容。这实际上是我做错的地方。如果您只是键入一些额外的文本“springframework”,BOOM,结果就在那里。
对于我来说,这个问题适用于:
在eclipse重启后,一切运行良好。
我也有同样的问题。上面提出的选项都不适合我。但是我发现,如果我让手动为org.springframework.spring-core版本4.3.4.RELEASE添加groupid / artifact / version并保存pom.xml,依赖项将自动下载并且搜索适用于已经存在的jar在存储库中。但是,如果我现在搜索当前依赖项中不存在的org.springframework.spring-context,则此搜索仍然无效。
手动使用https://search.maven.org/和前缀fc:来搜索类名。 Netbeans和Eclipse似乎都太愚蠢了,无法使用该搜索界面,并且下载的存储库索引的千兆字节似乎不包含任何类信息。磁盘空间总浪费。这些IDE项目最近维护得非常糟糕,我希望他们能将开发转移到GitHub。
有必要提供Group Id和Artifact Id来下载您需要的jar文件。如果你想搜索它,只需使用*,*表示这些字段。