Remove/Add jar 到 eclipse 工作区中的所有项目

Remove/Add jar to all projects in eclipse workspace

我最近升级了我正在开发的框架,旧安装的其中一个 jar 已升级到更新版本(即 jar 的名称不同)。

我工作区中的所有 (200+) 个项目都依赖于这个 jar,因此现在显示以下两个错误:

  1. "Project 'Blah' is missing required library"
  2. "The project cannot be build until build path errors are resolved"

修改工作区中每个项目的构建路径将花费我大量时间,首先删除不正确的 jar,然后添加新的。

有没有办法一次性add/remove所有(或一组)项目的jar?

This question 说明了如何使用库添加 jar - 我以后可以使用它,但不能解决我当前的问题。

我是运行 Eclipse Mars 4.5.0

是的,有办法。创建一个公共项目来保存所有项目使用的所有公共库(称之为 test1)。创建文件夹 lib 并将所有库复制到此处。右键单击该项目的属性,将所有这些库添加到构建路径。


让所有项目都依赖于这个项目。怎么样?

每个项目在其文件夹中都有一个名为 .classpath 的文件。我们需要对其进行调整。

Ctrl + H

在"Containing text"文本框中输入“”。

选中 "Regular expression" 按钮。

在"Filename patterns"文本框中输入“.classpath”

单击搜索 按钮。

在范围中选择 "workspace"。

搜索视图中将显示所有文件。在搜索视图菜单中选择 "Show as List" 选项。

现在,借助 CtrlShift 键,您可以轻松 select/deselect 许多项目。 Select 所有你想让它们依赖于 test1 的项目。

右击并选择"Replace Selected"。 输入数据如下图

注: 这里我选择Java项目。对于其他项目类型,您需要通过使用 UI.

添加依赖项来找出要替换的字符串

就是这样,您可以在 test1 项目中添加和删除公共库。但在导出项目时要小心。我还没有测试过,但希望它在导出后也能正常工作。如果它不起作用,请告诉我。

根据 Chandrayya G K 的回答,我找到了一个简单的解决方案来解决我的问题,不涉及创建额外的项目等。只需在类路径中查找并替换对 jar 的引用。

在 eclipse 中按 Ctrl+H 调出搜索 Window.

单击文件搜索选项卡

在 "Containing text:" 字段中输入引用旧 jar 的 classpathentry 标记。这可以在任何 eclipse 项目的 .classpath 文件中找到。我的看起来像这样:

<classpathentry kind="lib" path="C:/myjars/old-jar.jar"/>

然后您可以在 "File name patterns" 字段中指定 .classpath 以将搜索限制在类路径文件中。

限制 "Scope" 到整个工作区。

单击替换

在替换 window 中输入指向新 jar 的 classpathentry 标签。

单击“确定”。

*如果您没有需要更换的旧罐子,您只需将结尾的 </classpath> 标记替换为 <classpathentry kind="lib" path="C:/myjars/new-jar.jar"/> </classpath> 即可插入对新罐子的引用。