Как выполнить программу с помощью Maven?



Я хотел бы, чтобы цель Maven запускала выполнение класса java. Я пытаюсь мигрировать через Makefile со строк:



neotest:
mvn exec:java -Dexec.mainClass="org.dhappy.test.NeoTraverse"


и я хотел бы mvn neotest в результате чего make neotest в настоящее время делает.



ни exec plugin documentation, ни Maven Ant задачи у страниц был какой-то простой пример.



В настоящее время я нахожусь в:



<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions><execution>
<goals><goal>java</goal></goals>
</execution></executions>
<configuration>
<mainClass>org.dhappy.test.NeoTraverse</mainClass>
</configuration>
</plugin>


Я не знаю как запустить плагин из командной строки, однако.

752   2  

2 ответов:

С глобальная конфигурация что вы определили для exec-maven-plugin:

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>1.4</version>
  <configuration>
    <mainClass>org.dhappy.test.NeoTraverse</mainClass>
  </configuration>
</plugin>

вызов mvn exec:java в командной строке вызовет плагин, который настроен для выполнения класса org.dhappy.test.NeoTraverse.

Итак, чтобы запустить плагин из командной строки, просто запустите:

mvn exec:java

теперь, если вы хотите выполнить exec:java цель как часть вашей стандартной сборки, вам нужно будет привязать цель к конкретному этап из жизненный цикл по умолчанию. Для этого необходимо объявить phase, к которому вы хотите привязать цель в execution элемент:

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>1.4</version>
  <executions>
    <execution>
      <id>my-execution</id>
      <phase>package</phase>
      <goals>
        <goal>java</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <mainClass>org.dhappy.test.NeoTraverse</mainClass>
  </configuration>
</plugin>

в этом примере, Ваш класс будет выполнен в течение package этап. Это просто пример, адаптировать его в соответствии с вашими потребностями. Работает также с плагином версии 1.1.

для того, чтобы выполнить несколько программ, мне также нужен :

<profiles>
  <profile>
    <id>traverse</id>
    <activation>
      <property>
        <name>traverse</name>
      </property>
    </activation>
    <build>
      <plugins>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <configuration>
            <executable>java</executable>
            <arguments>
              <argument>-classpath</argument>
              <classpath/>
              <argument>org.dhappy.test.NeoTraverse</argument>
            </arguments>
          </configuration>
        </plugin>
      </plugins>
    </build>
  </profile>
</profiles>

это исполняемый файл как:

mvn exec:exec -Dtraverse

Comments

    Ничего не найдено.