如何使用Eclipse创建通用启动配置?

时间:2013-04-02 11:17:34

标签: java eclipse maven run-configuration launch-configuration

我的日食中有一个运行配置。在我的项目中,我们有两个分支:DEV和STABLE。 我想创建一个运行配置来构建我的项目,无论它在哪个分支上。

目前,当我使用以下两个变量之一设置Base directory${project_path}${build_project}时,我会遇到此错误:

  

基本目录不存在或无法读取。

这有效:${workspace_loc:/my-project-dev-branch}但与特定分支相关联。我必须复制此配置以构建稳定分支。

  • 那么,如何查看${project_path}${build_project}
  • 的实际内容
  • 或者我应该使用哪个变量来获得此结果:${workspace_loc:/${eclipse_variable_with_project_name}}

4 个答案:

答案 0 :(得分:15)

我不确定我是如何在工作空间中表示分支的代表,但是

  • ${project_path}表示相对于工作区的路径
  • ${build_project}只会在实际构建期间设置(而不是在程序执行期间)

根据您的说明,您希望改为使用${project_loc}

Nota:在启动运行配置之前,必须在透视项目中选择项目。否则,您将收到如下截图中的消息:

picture of Alert box popup with the text 'Launching MY RUN CONFIGURATION' has encountered a problem.  Variable references empty selection: ${project_loc}'

答案 1 :(得分:2)

由于您已经创建了一个String Substitution变量,通过Eclipse首选项中的Run Debug-> String Substitution来处理不同的路径,您可以:

  1. 创建一个变量,例如branch_loc,其值为${workspace_loc:/my-project-dev-branch}
  2. 如果路径仅略有不同,例如通过分支名称,您可以创建一个带有值的变量branch,例如dev,然后使用branch_loc
  3. 创建${workspace_loc}\${branch}

    然后使用${branch_loc}作为Maven基目录。

    让所有分支使用相同的路径会更好,git和mercurial允许你这样做。然后,您可以将${project_loc}用于Maven基目录。对于project_loc,如果您指定项目的项目名称,例如${project_loc:MY_PROJECT_NAME},然后它不要求您选择项目以便工作。

    如果右键单击该项目,然后选择“属性”,则可以通过查看路径以及${project_path}将通过查看位置来解析的内容来查看${project_loc}将解析的内容。

答案 2 :(得分:1)

您可以通过以下方式设置基本目录:

${project_loc:${project_name}}

您可以从变量选项中找到上述变量。

您还可以在目标中设置mvn命令,如下所示:

clean install -PautoInstallPackage -Padobe-public -DskipTests

答案 3 :(得分:0)

首先,如果您使用git作为版本控制系统:不要两次签出项目,只需在单个项目中的分支之间切换。 Git就是为此设计的,可以在几秒钟内完成。这样你的问题就会彻底消失。

如果这不是一个选项,那么将运行配置置于版本控制本身可能是另一种选择。设置共享文件选项,如第一个突出显示所示: enter image description here

然后,您可以通过在相应项目中选择它来运行运行配置(因为那里真的是一个文件)并通过上下文菜单启动它。但是,我从未尝试过两次检出相同的启动配置。