Вопрос

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

Это было полезно?

Решение

См. плагин exec maven.Вы можете запускать классы 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 в mainpkg.Измените его в соответствии с вашим проектом.enter image description here

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

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

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

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

2.Команда Run

Теперь из терминала выполните следующую команду:

mvn clean compile exec:java

ПРИМЕЧАНИЕ Вы можете передать дополнительные аргументы через -Dexec.args="xxx" флаг.

Дай Плагин Exec Maven попытка

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

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

См. плагин maven exec для большего использования.

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

Не забудьте указать класс в <properties></properties> раздел 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>

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

enter image description here

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top