Remove/Add jar 到 eclipse 工作区中的所有项目
Remove/Add jar to all projects in eclipse workspace
我最近升级了我正在开发的框架,旧安装的其中一个 jar 已升级到更新版本(即 jar 的名称不同)。
我工作区中的所有 (200+) 个项目都依赖于这个 jar,因此现在显示以下两个错误:
- "Project 'Blah' is missing required library"
- "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" 选项。
现在,借助 Ctrl 和 Shift 键,您可以轻松 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>
即可插入对新罐子的引用。
我最近升级了我正在开发的框架,旧安装的其中一个 jar 已升级到更新版本(即 jar 的名称不同)。
我工作区中的所有 (200+) 个项目都依赖于这个 jar,因此现在显示以下两个错误:
- "Project 'Blah' is missing required library"
- "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" 选项。
现在,借助 Ctrl 和 Shift 键,您可以轻松 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>
即可插入对新罐子的引用。