2014-02-28 1 views
1

내 maven 프로젝트에 실행 가능한 jar 테스트를 추가하고있다. pom 파일을 편집하여 src/main/resources의 메인 클래스를 사용했습니다. 그러나 항아리를 실행하려고 할 때 주 수업을 찾을 수 없습니다. 이견있는 사람?src/main/resources의 Maven Jar 메인 클래스

+0

추가 노트를, I 항아리를보고 내 주요 클래스는 항아리에 있으며 올바른 경로를 사용하고 있습니다. – Richard

+5

진짜 질문은 ... 주 클래스를 주/리소스 폴더에 넣어야하는 이유는 무엇입니까? 클래스는 main/java 폴더, main/resources의 리소스에 있어야합니다 ... –

+0

이 코드는 테스트 프로그램이므로 실제 코드와 분리되어 있습니다. 그게 가능하지 않다면 괜찮아, 그냥 궁금해서. – Richard

답변

0

자바 클래스는 src/main/java에 있어야합니다. 당신이 java -jar your-executable-jar.jar을 실행할 때, 당신의 META-INF/MANIFEST.MF 파일이 포함되어 있어야합니다 메인 클래스를 시작하기 위해

0

Main-Class header :

Main-Class: con.example.YourClass 

메이븐 매니페스트 maven-jar-plugin에 파일을 생성 할 수 있습니다

<project> 
    ... 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     ... 
     <configuration> 
      <archive> 
      <manifest> 
       <mainClass>fully.qualified.MainClass</mainClass> 
      </manifest> 
      </archive> 
     </configuration> 
     ... 
     </plugin> 
    </plugins> 
    </build> 
관련 문제