문제

Java 클래스의 기본 메소드를 간단히 실행하기 위해 Maven "Phase"또는 "Goal"이 있습니까? 단순히 "MVN Run"과 같은 작업을 수행하여 수동으로 테스트하고 싶은 프로젝트가 있습니다.

도움이 되었습니까?

해결책

참조 Exec Maven 플러그인. 다음을 사용하여 Java 클래스를 실행할 수 있습니다.

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

호출은 간단 할 수 있습니다 mvn exec:java 플러그인 구성이 pom.xml에있는 경우 Mojohaus의 플러그인 사이트에는 a가 있습니다 더 자세한 예.

<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 파일에 대해 나와 같은 Noobs를 단순화하고 있습니다. 새 속성을 추가하십시오 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. 명령을 실행하십시오

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

mvn clean compile exec:java

노트 당신은 더 많은 논쟁을 통해 전달할 수 있습니다 -Dexec.args="xxx" 깃발.

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>

STS 위의 Maven 설정과 함께 구성 실행 :

enter image description here

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top