【发布时间】:2017-08-29 19:31:04
【问题描述】:
我有几个用于 Eclipse 的 .launch 文件(我正在使用 Eclipse Oxygen),这是一个示例
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
<booleanAttribute key="M2_DEBUG_OUTPUT" value="false" />
<stringAttribute key="M2_GOALS" value="clean com.google.cloud.tools:appengine-maven-plugin:deploy" />
<booleanAttribute key="M2_NON_RECURSIVE" value="false" />
<booleanAttribute key="M2_OFFLINE" value="false" />
<stringAttribute key="M2_PROFILES" value="" />
<listAttribute key="M2_PROPERTIES" />
<stringAttribute key="M2_RUNTIME" value="EMBEDDED" />
<booleanAttribute key="M2_SKIP_TESTS" value="true" />
<intAttribute key="M2_THREADS" value="1" />
<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false" />
<stringAttribute key="M2_USER_SETTINGS" value="" />
<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false" />
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc}" />
</launchConfiguration>
请注意,我使用 ${project_loc} 变量是为了使其可用于任何项目。
我使用这种文件是因为我可以与我的团队共享这些文件。此外,最常用的 Maven 构建配置也可以在每次新的启动配置文件时无需配置。
我面临的问题与配置文件值有关
<stringAttribute key="M2_PROFILES" value="" />
使用项目中的CTRL+ALT+P 快捷方式,我可以选择要加载的正确配置文件(Select Maven Profiles... 函数)。我正在使用不同的配置文件来识别部署环境(开发、生产阶段)。
我正在尝试将我为项目启用的配置文件“注入”到通用启动配置文件配置中,类似于 ${project_loc} 变量,但与当前的 Maven 配置文件相关。
如果无法做到这一点,我需要为每个环境创建一个启动配置文件,这意味着每个要启动的目标 3 个文件。
有没有办法使用/创建可以通过我在项目中激活的 Maven 配置文件解析的 Eclipse 变量?
类似
<stringAttribute key="M2_PROFILES" value="${maven.profile.id}" />
【问题讨论】: