[java] 메이븐 런 프로젝트

Java 클래스의 기본 메소드를 간단히 실행하기위한 Maven “단계”또는 “목표”가 있습니까? 단순히 “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>


답변

1. POM.xml 편집

에 다음 속성을 추가하십시오 pom.xml. main메소드 가 포함 된 완전한 클래스 이름 (예 : 패키지 이름)을 사용해야합니다 .

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

2. 커맨드 실행

이제 터미널에서 다음 명령을 트리거하십시오.

mvn clean compile exec:java

참고-Dexec.args="xxx" 플래그 를 통해 추가 인수를 전달할 수 있습니다 .


답변

위에서 언급 한 답변은 정확하지만 나 같은 멍청한 놈을 위해 단순화하고 있습니다. 프로젝트의 pom 파일로 이동하십시오. 새 속성을 추가하고 exec.mainClass기본 메서드가 포함 된 클래스로 값을 지정하십시오. 나에게는이었다 DriverClass에서 mainpkg. 프로젝트에 따라 변경하십시오.
여기에 이미지 설명을 입력하십시오

이 작업을 수행하면 프로젝트가 들어있는 폴더로 이동 pom.xml하여 명령 프롬프트에서 실행하십시오 mvn exec:java. 메인 메소드를 호출해야합니다.


답변

pom.xml에 새 플러그인을 추가 할 필요가 없습니다. 이 명령을 실행하십시오

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

자세한 사용법 은 maven exec 플러그인 을 참조하십시오 .


답변

주고받는 Exec에서 메이븐 플러그인 시도를


답변

clean package exec:java -P Class_Containing_Main_Method 다음 Maven Setup을 사용하여 프로젝트에 하나의 Main method (PSVM) 만있는 경우 명령도 옵션입니다.

다음 <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 Setup과 함께 STS Run Configuration :

여기에 이미지 설명을 입력하십시오


답변