【问题标题】:Eclipse launch profile - Ask for user promptEclipse 启动配置文件 - 询问用户提示
【发布时间】:2019-02-07 18:13:15
【问题描述】:

我有一个这样的 Eclipse 启动文件:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
    <stringAttribute key="M2_GOALS" value="clean appengine:deploy" />
    <stringAttribute key="M2_PROFILES" value="development" />
    <stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc}" />
</launchConfiguration>

此文件与我用来将应用程序部署到在线环境的 Google App Engine Maven 项目相关。

因为不同的环境(dev、stage、prod...)有不同的配置,我使用 Maven 配置文件来管理它们。

此启动文件工作正常,但我无法轻松配置要用于部署的版本。我在 pom.xml 文件中有一个 Maven 属性,它允许我部署特定版本,但它不是很方便

<app.deploy.version>this-is-my-version</app.deploy.version>

有没有办法在询问用户输入时配置 .launch 文件,然后将该输入配置为与我正在使用的目标相关的 Maven 属性?


编辑 我现在将概括并更好地集中这个问题:

在 Maven 构建期间,是否存在插件或直接从运行构建的 CLI 要求用户输入的东西?是否可以将此输入配置为可在构建运行后立即使用的 Maven 属性?

这可以是一个非常通用的插件,目标中的一个参数定义了要使用给定输入配置的属性的名称。

根据我的需要,用户输入会是部署的版本,需要在构建时配置为app.deploy.version

类似:

...
...
insert value for property 'app.deploy.project'
input: my-value
'app.deploy.project' set to 'my-value'
...
...

【问题讨论】:

  • 是否要在每次部署时为 Eclipse 设置版本名称?这似乎在the current interface 中可用。
  • 你是对的,我想在每次部署期间设置一个版本名称,但使用 Maven CLI。我已经知道提供 UI 的 Eclipse 插件,但在处理 Maven 配置文件时并不方便。我需要根据我正在部署的环境激活/停用正确的。我现在编辑了这个问题,以便更好地关注具体的询问

标签: eclipse google-app-engine configuration command launch


【解决方案1】:

Maven 配置文件能够设置 Maven 属性。例如,以下配置文件会在 MacOS 上运行构建时设置 os-jvm-flag 属性。

<profiles>
  <profile>
    <id>macosx-jvm-flags</id>
    <activation>
      <os><family>mac</family></os>
    </activation>
    <properties>
      <os-jvm-flags>-XstartOnFirstThread</os-jvm-flags>
    </properties>
  </profile>
</profiles>

如果您想在使用 Eclipse 的 Maven 启动器时提示输入版本,您可以使用 Eclipse 的变量表达式。向使用变量的 Maven 启动器页面添加参数并指定 string_prompt 表达式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    • 2014-01-15
    • 1970-01-01
    相关资源
    最近更新 更多