Мэйвен Запуска Проекта



есть ли Maven "фаза" или "цель", чтобы просто выполнить основной метод класса Java? У меня есть проект, который я хотел бы проверить вручную, просто делая что-то вроде "mvn run".

500   6  

6 ответов:

посмотреть exec maven plugin. Вы можете запускать классы Java с помощью:

mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ...

вызов может быть таким же простым, как mvn exec:java если конфигурация плагина находится в вашем pom.XML. Плагин сайт на Mojohaus имеет более подробный пример.

<project>
    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.2.1</version>
                <configuration>
                    <mainClass>com.example.Main</mainClass>
                    <arguments>
                        <argument>argument1</argument>
                    </arguments>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

вышеупомянутые ответы верны, но я упрощаю его для таких нубов, как я.Перейдите в файл POM проекта. Добавить новое свойство exec.mainClass и дать его значение в качестве класса, который содержит ваш основной метод. Для меня это было DriverClass in mainpkg. Измените его в соответствии с вашим проектом. enter image description here

сделав это, перейдите в папку, содержащуюpom.xml и запустить в командной строке mvn exec:java. Это должно вызвать основной метод.

дать Exec maven plugin попробовать

нет необходимости добавлять новый плагин в pom.XML. Просто запустите эту команду

mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)' 

посмотреть Maven exec plugin для дальнейшего использования.

1. Редактировать пом.xml

добавьте следующее свойство в pom.xml, убедитесь, что вы используете полное имя класса (т. е. с именем пакета), который содержит main метод.

<properties>
        <exec.mainClass>${fully-qualified-class-name}</exec.mainClass>
</properties>

2. Выполнить Команду

теперь из терминального триггера следующая команда -

mvn clean compile exec:java

Примечание вы можете передать дополнительные аргументы через -Dexec.args="xxx" флаг

clean package exec:java -P Class_Containing_Main_Method команда также является опцией, если у вас есть только один основной метод(PSVM) в проекте со следующей настройкой Maven.

не забудьте указать класс, в на pom.xml:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <java.main.class>com.test.service.MainTester</java.main.class>
</properties>

<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2.1</version>
        <configuration>
           <mainClass>${java.main.class}</mainClass>
        </configuration>
</plugin>

STS запустите конфигурацию вместе с выше настройки Maven:

enter image description here

Comments

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