2017-10-21 24 views
0

IDE에서 executes 프로젝트가 실행되는 동안 JAR은 hello world 유형의 콘솔 앱이 실제로 실행되도록 어떻게 생성됩니까?mvn 클린 패키지 : 메인 매니페스트 속성 없음

[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ mvn clean package 
[INFO] Scanning for projects... 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building HelloMaven 1.0-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ HelloMaven --- 
[INFO] Deleting /home/thufir/NetBeansProjects/HelloMaven/target 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ HelloMaven --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] Copying 0 resource 
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ HelloMaven --- 
[INFO] Changes detected - recompiling the module! 
[INFO] Compiling 1 source file to /home/thufir/NetBeansProjects/HelloMaven/target/classes 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ HelloMaven --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory /home/thufir/NetBeansProjects/HelloMaven/src/test/resources 
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ HelloMaven --- 
[INFO] Nothing to compile - all classes are up to date 
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ HelloMaven --- 
[INFO] No tests to run. 
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ HelloMaven --- 
[INFO] Building jar: /home/thufir/NetBeansProjects/HelloMaven/target/HelloMaven-1.0-SNAPSHOT.jar 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 3.400 s 
[INFO] Finished at: 2017-10-21T10:50:42-07:00 
[INFO] Final Memory: 14M/47M 
[INFO] ------------------------------------------------------------------------ 
[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ tree 
. 
├── nbactions.xml 
├── pom.xml 
├── src 
│   ├── main 
│   │   ├── java 
│   │   │   └── net 
│   │   │    └── bounceme 
│   │   │     └── dur 
│   │   │      └── hello_maven 
│   │   │       └── Main.java 
│   │   └── resources 
│   └── test 
│    └── java 
└── target 
    ├── classes 
    │   └── net 
    │    └── bounceme 
    │     └── dur 
    │      └── hello_maven 
    │       └── Main.class 
    ├── generated-sources 
    │   └── annotations 
    ├── HelloMaven-1.0-SNAPSHOT.jar 
    ├── maven-archiver 
    │   └── pom.properties 
    └── maven-status 
     └── maven-compiler-plugin 
      ├── compile 
      │   └── default-compile 
      │    ├── createdFiles.lst 
      │    └── inputFiles.lst 
      └── testCompile 
       └── default-testCompile 
        └── inputFiles.lst 

25 directories, 9 files 
[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ java -jar target/HelloMaven-1.0-SNAPSHOT.jar 
no main manifest attribute, in target/HelloMaven-1.0-SNAPSHOT.jar 
[email protected]:~/NetBeansProjects/HelloMaven$ 

명시 적으로 매니페스트 항목을 Main-Class으로 지정하면됩니다.

는 그냥 package phase에 초점 :

실행 메이븐 도구 메이븐 페이즈

거의 포괄적 인 목록 있지만 이러한 실행 가장 일반적인 기본 라이프 사이클 단계는

.

검증 : 프로젝트를 검증은 정확하고 필요한 모든 정보를 사용할 컴파일 경우 : 프로젝트 테스트의 소스 코드를 컴파일 : 적절한 단위 테스트 프레임 워크를 사용하여 컴파일 된 소스 코드를 테스트합니다. 이 테스트에서는 코드를 또는 배포 된 패키지로 패키징 할 필요가 없습니다. 컴파일 된 코드를 가져 와서 배포 가능 형식 (예 : JAR)으로 패키징하십시오. 통합 테스트 : 프로세스 및 테스트가 실행될 수있는 환경에서 필요한 경우 패키지를 유효하고 품질 기준을 충족하는지 검사합니다. 확인 : 패키지를 로컬 리포지토리에 설치합니다. 다른 개발자와 공유 복사 원격 저장소에 최종 패키지 및 프로젝트

내가 볼
+1

가능한 중복 (https://stackoverflow.com/questions/9689793/cant-execute-jar-file-no -main-manifest-attribute)를 사용합니다. 또는 maven에만 해당 https://stackoverflow.com/questions/15990258/maven-cant-execute-jar – nullpointer

답변

0

, 그것은 사용의 문제, 통합에서 수행 또는 환경을 해제 : 로컬로 배포 다른 프로젝트의 종속성으로 사용 음영 플러그인 :

[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ mvn clean package 
[INFO] Scanning for projects... 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building HelloMaven 1.0-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ HelloMaven --- 
[INFO] Deleting /home/thufir/NetBeansProjects/HelloMaven/target 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ HelloMaven --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] Copying 0 resource 
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ HelloMaven --- 
[INFO] Changes detected - recompiling the module! 
[INFO] Compiling 1 source file to /home/thufir/NetBeansProjects/HelloMaven/target/classes 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ HelloMaven --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory /home/thufir/NetBeansProjects/HelloMaven/src/test/resources 
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ HelloMaven --- 
[INFO] Nothing to compile - all classes are up to date 
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ HelloMaven --- 
[INFO] No tests to run. 
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ HelloMaven --- 
[INFO] Building jar: /home/thufir/NetBeansProjects/HelloMaven/target/HelloMaven-1.0-SNAPSHOT.jar 
[INFO] 
[INFO] --- maven-shade-plugin:3.1.0:shade (default) @ HelloMaven --- 
[INFO] Replacing original artifact with shaded artifact. 
[INFO] Replacing /home/thufir/NetBeansProjects/HelloMaven/target/HelloMaven-1.0-SNAPSHOT.jar with /home/thufir/NetBeansProjects/HelloMaven/target/HelloMaven-1.0-SNAPSHOT-shaded.jar 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 3.805 s 
[INFO] Finished at: 2017-10-21T11:02:31-07:00 
[INFO] Final Memory: 17M/56M 
[INFO] ------------------------------------------------------------------------ 
[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ java -jar target/HelloMaven-1.0-SNAPSHOT.jar 
Oct 21, 2017 11:02:38 AM net.bounceme.dur.hello_maven.Main getGreeting 
INFO: Hello world. 
[email protected]:~/NetBeansProjects/HelloMaven$ 
[email protected]:~/NetBeansProjects/HelloMaven$ cat pom.xml 
<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.mycompany</groupId> 
    <artifactId>HelloMaven</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>jar</packaging> 
    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <maven.compiler.source>1.8</maven.compiler.source> 
     <maven.compiler.target>1.8</maven.compiler.target> 
    </properties> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-shade-plugin</artifactId> 
       <version>3.1.0</version> 
       <executions> 
        <execution> 
         <phase>package</phase> 
         <goals> 
          <goal>shade</goal> 
         </goals> 
         <configuration> 
          <transformers> 
           <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 
            <mainClass>net.bounceme.dur.hello_maven.Main</mainClass> 
           </transformer> 
          </transformers> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 
[email protected]:~/NetBeansProjects/HelloMaven$ 

http://maven.apache.org/plugins/maven-shade-plugin/examples/executable-jar.html

[jar- 파일을 실행할 수 없습니다 : "아니오 주요 매니페스트 속성을"]의