我的Eclipse JDT项目中有一些Ant任务,我想在每次编译之前执行,所以我在我的Eclipse构建器配置中添加了一个Ant构建器。作为构建文件的位置,我输入了
${workspace_loc:${project_path}/build.xml}
我不想要在这里拥有任何绝对路径或项目名称。 Eclipse配置是存储库的一部分,其他用户使用不同的文件系统布局和可能不同的Eclipse项目名称来检查它。例如,我通常在Eclipse工作区中有相同项目的几个工作副本,每个副本当然都有不同的项目名称。
大部分时间都可以使用。但是,我有时会在对话框中收到以下错误消息:
构建期间发生错误 项目“MyProjectName”上运行构建器“集成外部工具生成器”的错误 变量引用空选择:$ {project_path}
变量引用空选择:$ {project_path}
这似乎发生在Eclipse决定构建项目时,而在Package Explorer中没有选择项目的资源。我可以通过在项目中创建一个虚拟文件,删除Eclipse外部的文件,在Eclipse中选择它并按 F5 来重现它。 Eclipse将注意到该文件不再存在,将其从Package Explorer中删除(因此不再选择任何内容),然后构建项目,并显示错误消息。
虽然为每个编译运行Ant任务并不是那么重要,但我不希望有这样的错误消息框会让用户感到困惑。
那我怎么能
任何帮助将不胜感激。我正在使用Eclipse 3.7(Indigo)。
答案 0 :(得分:17)
显然,它在转换对变量($ {project_path})的引用时遇到了问题......对变量的引用($ {workspace_loc})。
您可以尝试使用$ {build_project}变量
${build_project:/build.xml}
我希望它有所帮助。
答案 1 :(得分:9)
您在Eclipse的UI中遇到了一些不便。逻辑表明,当您打开项目时,应填充有关已打开项目的变量。 但他们不是,因为由于一个错误或其他原因,代码在焦点转移到其他地方后杀死了它们。
作为解决方法,您可以:
单击项目(文件夹图标)将填充变量
顺便说一下,我认为${workspace_loc}${project_path}/build.xml
没问题。