gpt4 book ai didi

java - 将 Ant builder 集成到 Eclipse 中 : Relative paths for refresh scope working set

转载 作者:IT老高 更新时间:2023-10-28 21:02:57 26 4
gpt4 key购买 nike

这个问题类似于 Integrate Ant builder into Eclipse: Error "Variable references empty selection" ,但要求不同的东西。

在我的 Eclipse JDT 项目中,我有一些要在编译之前执行的 ant 任务,所以我在我的 Eclipse 构建器配置中添加了一个 ant 构建器。现在我想为此构建器配置“完成时刷新资源”和“相关资源的工作集”两个选项,以便它们包含我项目中的特定目录。

两者都允许我用 dialogue 指定一个“工作集” .问题是这会将路径放在与工作空间相关的 Eclipse 构建器配置文件中,因此路径将包含项目名称。

问题是整个项目是在一个颠覆存储库中管理的。 Eclipse 配置是存储库的一部分,其他用户使用不同的文件系统布局和可能不同的 Eclipse 项目名称来检查它。例如,我的 Eclipse 工作区中通常有同一个项目的多个工作副本,当然每个副本都有不同的项目名称。

这就是为什么我正在寻找一种方法如何在 Eclipse 中指定相对于项目目录的工作集(不是工作区目录),或者 其他定义刷新范围的方法构建器,使其在我的项目中包含一个目录

我正在使用 Eclipse 3.7 (Indigo)。

如果我在对话框中配置工作集,然后在配置文件中查看,以下字符串是 ATTR_REFRESH_SCOPE 选项的值:

${working_set:
<?xml version="1.0" encoding="UTF-8"?>

<resources>

<item path="/MyProject" type="4"/>

</resources>}

净化后的样子如下:

${working_set:
<?xml version="1.0" encoding="UTF-8"?>
<resources><item path="/MyProject/lib" type="2"/></resources>
}

所以我想从中获得“MyProject”部分。我尝试了上述问题的解决方案,并将路径替换为${build_project:/lib}。这不会给出错误消息,但似乎没有效果(Eclipse 不会刷新提到的目录)。

我还尝试用 ${build_project:/lib} 替换整个工作集定义,但这会给出错误消息 Unable to restore resource memento

我知道我可以告诉 Eclipse 在构建器运行后刷新整个项目,但这不是我想要的(它很慢)。同样对于“相关资源”配置选项,这意味着构建器在项目中的每次更改后都会不必要地运行。

最佳答案

不幸的是,Eclipse 不适合使用相对目录。

Relative Paths in Eclipse

但是您可以执行以下操作:

  • 创建一个新工作区。
  • 从所有机器上都相同的已知位置导入文件。
  • 配置该已知目录中的所有内容。
  • 向其他开发人员提供工作区和设置说明,以便他们使用相同的“已知目录”。

你可以有类似的东西

C:\YourKnownDir\
\workspace\
\src\
\build\

并使用批处理文件启动 eclipse:

start %ECLIPSE_DIR%\eclipse.exe -data .\workspace

如果您要在 SVN 中包含 .project 文件,那么确实应该有一个预先确定的完整路径。例如:

C:\svn

希望对您有所帮助,但我不知道有什么其他方法可以解决这个问题。

关于java - 将 Ant builder 集成到 Eclipse 中 : Relative paths for refresh scope working set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8149373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com