我希望在Java Builder启动之前将Java程序作为构建器运行。要运行的Java类是工作区内另一个项目的一部分。
我可以添加“程序”构建器,但我不想明确指向Java VM,因为我的团队成员可能将Java安装在不同的位置。有没有办法在不引用特定JVM可执行文件的情况下实现这一目标?
编辑:添加了Eclipse Builders的截图,以显示我正在谈论的配置。
答案 0 :(得分:1)
我可以使用普通启动程序运行java程序(使用运行/调试配置创建的.launch文件)。我想出了一种方法,使其成为一个Builder步骤。
只需将.launch
移至.externalToolBuilders
,然后在文本编辑器中修改.project
文件即可获取该.launch
文件。
<buildCommand>
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
<dictionary>
<key>LaunchConfigHandle</key>
<value><project>/.externalToolBuilders/MyCustomJavaProgram.launch</value>
</dictionary>
</arguments>
</buildCommand>
Eclipse是一个好孩子,并没有抱怨org.eclipse.jdt.launching.localJavaApplication
作为构建器步骤的存在,一切顺利。实际上,如果您编辑这个新添加的构建器步骤,它甚至会显示正确的编辑启动配置对话框。
答案 1 :(得分:0)
在Java中创建构建器的最佳方法是创建插件并使用org.eclipse.core.resources.builders
扩展点。然后,您的构建器类将扩展org.eclipse.core.resources.IncrementalProjectBuilder
类,并可以访问有关正在构建的内容的大量详细信息。
此方法不需要在任何地方指定JVM,因为您的插件作为Eclipse的一部分运行。