Профиль запуска Eclipse - запросить приглашение пользователя - PullRequest
0 голосов
/ 02 сентября 2018

У меня есть файл запуска 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 для управления ими.

Этот файл запуска работает нормально, но я не могу легко настроить версию, которая будет использоваться для развертывания. У меня есть свойство Maven в файле pom.xml, которое позволяет мне развертывать определенную версию, но это не очень удобно

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

Есть ли способ настроить файл .launch при запросе пользовательского ввода, а затем настроить его как свойство Maven, связанное с целью, которую я использую?


EDIT Сейчас я обобщу и лучше сфокусируюсь на вопросе:

во время сборки Maven существует ли плагин или что-то, что запрашивает пользовательский ввод непосредственно из CLI, где выполняется сборка? И можно ли этот вход настроить как свойство Maven, которое можно использовать сразу после запуска сборки?

Это может быть очень общий плагин, параметр в цели определяет имя свойства, которое будет настроено с данным вводом.

В соответствии с моими потребностями пользовательский ввод будет версией развертывания и должен быть настроен как app.deploy.version во время сборки.

Что-то вроде:

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

1 Ответ

0 голосов
/ 19 сентября 2018

Профили Maven могут устанавливать свойства Maven. Например, следующий профиль устанавливает свойство os-jvm-flag при запуске сборки в MacOS.

<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>

Если вы хотите запросить версию, когда используете средство запуска Maven из Eclipse, вы можете использовать переменные выражения Eclipse . Добавьте параметр на страницу запуска Maven, которая использует переменную, и укажите выражение string_prompt.

variable expressions

...