如何通过编程的方式运行Eclipse启动配置?

41

我很难把这个问题表达清楚,因为有很多通用术语(run、configuration、launch等)。下面开始:

你可以在一个.launch文件中保存运行配置。(在运行配置对话框中,在“常规”选项卡下,另存为共享文件。)

我们将它们检入SVN。开发人员可以相互传递,这有助于让新的开发人员更快地运行工作应用程序。

我想在构建过程中检出它们,并使用它们来编程运行应用程序、测试等,而不需要启动整个IDE。

在UI之外运行.launch文件的最佳方法是什么?

编辑:我正在尝试统一构建服务器和IDE上运行的测试。我并不特别想放弃集成调试,这将是使用ant脚本运行测试的情况。

这可能更多地是一个涉及多个bundle的集成测试问题,或者是单元测试一个整个bundle的问题,其中您想模拟扩展。


4
+1!我是Eclipse的新手,保存启动配置到源文件中以便提交至SVN花费了很大的力气。我找到了你的问题,它已经回答了我还未提出的问题。谢谢! - JasonSmith
1
如果你正在寻找一种在Eclipse中运行已构建项目的方法,你可以使用项目(在Package Explorer中)上的“导出”上下文菜单来创建一个“可运行的JAR文件”。 - Ben
可以在没有Eclipse环境的情况下运行RCP吗?能否模仿Eclipse环境并测试插件而不需要运行Eclipse可执行文件? - Ravisha
4
你找到解决方案了吗?我也在尝试做类似的事情。 - lucks
也在寻找类似的解决方案。 - prolink007
显示剩余4条评论
6个回答

4

有一个基于JUnit构建的Eclipse插件,称为TPTP。它提供了一个自动化客户端,可以在Eclipse中无需GUI启动测试。也许这会有所帮助。


2

Ant4Eclipse 可能是一个很好的起点,教你如何做到这一点。

不幸的是,它仅限于Java应用程序和JUnit配置;我更感兴趣的是PDE应用程序和插件JUnit测试。


2

您也可以使用Eclipse使用的shell命令。获取它的方法如下:

  1. 在Eclipse中运行您的程序
  2. 进入“调试”视图
  3. 右键单击进程(可能是树中的第二项)并选择“属性”
  4. 复制shell命令并删除agentlib标志以在bash中运行

2

我最近在使用Eclipse Buckminster在Hudson CI服务器内构建Eclipse RCP应用程序方面取得了很大的成功。虽然需要花费一些时间来设置功能,使我的RCP产品基于功能,并添加Buckminster查询文件等内容,但是一旦完成后,它就可以正常工作了。有一个Hudson/Jenkins Buckminster插件可以让我让hudson构建应用程序。

在保存每个测试片段的启动配置之后,我创建了hudson命令来调用它们(不幸的是,每个测试片段都需要一行),但之后我得到了我想要的自动化CI构建。


1

也许以您自己的方式运行配置,就像运行自定义运行配置一样,会对此有所帮助。该方法在本文中有描述。


本文允许我们定义自己的启动配置类型。我们希望能够运行现有的配置。不幸的是,这些启动配置类型(以及框架本身)都在org.eclipse.jdt.debug.ui中,因此不太适合无头构建服务器。 - jamesh

1

我认为你不需要使用.launch配置来运行测试。如果你使用Eclipse Build System构建应用程序,那么你可以使用Eclipse中的AntRunner应用程序来运行单元测试。这不会启动整个IDE。

本文描述了如何在构建过程中运行测试。通过这个过程,你可以使用一个特殊的“Test”Eclipse并加载你想要测试的插件。


我试图避免的问题是保持构建/测试/部署元数据同步。如果我能够从相同的一组元数据中运行所有内容... - jamesh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接