95

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

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

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

在我的另一个工作区中,对于我现有的项目,我没有这个问题。

有没有办法解决这个问题?

4

8 回答 8

193

Eclipse 工件搜索依赖于存储库的索引文件。您似乎没有下载索引文件。

转到Window -> Prefrences -> Maven并检查"Download repository index updates on start"。重新启动 Eclipse,然后查看进度视图。应下载索引文件。

完全下载后,神器搜索就可以使用了。

Maven 设置

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

在此视图中,打开“全局存储库”,右键单击“中央”,选中“启用完整索引”,然后单击同一菜单中的“重建索引”。

将下载一个 66M 的索引文件。

Maven 存储库 -> 重建索引

于 2012-12-28T02:33:36.857 回答
8

在你的 Eclipse 中,转到 Windows -> Preferences -> Maven 首选项 Maven 截图 勾选“启动时下载存储库索引更新”选项。您可能需要重新启动 Eclipse。

还要转到 Windows -> 显示视图 -> 其他 -> Maven -> Maven 存储库 Maven 存储库视图截图

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

完整索引截图

于 2018-04-28T06:33:32.543 回答
4

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

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

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

于 2012-12-27T18:55:00.223 回答
4

对我来说,这个问题的工作是:

  • 删除 ~/.m2
  • 在中央存储库的 Maven 存储库视图中启用“启用完整索引”
  • 中央 Maven 存储库上的“重建索引”

eclipse重启后一切正常。

于 2017-08-16T09:07:58.230 回答
3

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

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

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

于 2016-08-14T15:37:37.433 回答
1

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

于 2016-12-09T02:46:58.687 回答
0

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

于 2017-06-03T06:51:24.143 回答
0

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

于 2019-02-16T14:31:43.947 回答