여기 서 IDEA 로 jar 가방 을 포장 하 는 여러 가지 방식 을 정리 하고 앞으로 의 프로젝트 포장 Jar 가방 은 다음 과 같은 형식 을 참고 할 수 있 습 니 다.
IDEA 자체 포장 형식 으로Maven 플러그 인 maven-shade-plugin 으로 포장 합 니 다Maven 플러그 인 maven-assembly-plugin 으로 포장 합 니 다IDEA 자체 포장 방식 으로:
IDEA 의 file->Project Structure 를 열 고 프로젝트 설정 페이지 에 들 어 갑 니 다.다음 그림:
Artifacts 를 클릭 하여 Artifacts 설정 페이지 에 들 어가+를 클릭 하고 다음 그림 과 같은 옵션 을 선택 하 십시오.
Create JAR from Modules 페이지 에 들 어가 다음 그림 에 따라 설정 합 니 다.
4.567917.첫 번 째 단 계 는 Main 함수 가 실행 하 는 종 류 를 선택 합 니 다
두 번 째 단 계 는 그림 과 같은 옵션 을 선택 합 니 다.목적 은 제3자 Jar 가방 을 포장 할 때 추가 설정 을 하 는 것 입 니 다.추가 설정 을 하지 않 으 면 이 옵션 을 선택 하지 않 을 수 있 습 니 다(포장 성공 은 보장 되 지 않 습 니 다) 세 번 째 단 계 는 src/main 디 렉 터 리 에 resources 디 렉 터 리 를 새로 만 들 고 MANIFEST.MF 파일 을 여기에 저장 해 야 합 니 다.기본 값 으로 부족 하면 IDEA 12 버 전에 bug 가 있 기 때 문 입 니 다OK 를 클릭 하면 다음 그림 인터페이스 와 같이 나타 납 니 다.
를 오른쪽 클릭 하고 Create Directory 를 클릭 하여 libs 를 만 들 고 모든 제3자 JAR 을 libs 디 렉 터 리 에 넣 습 니 다. 성공 후 다음 그림 과 같이: 넣 은 후,우리 가 만 들 jar 의 이름 을 누 르 십시오.이 안 은 kafka-cps.jar 입 니 다.classpath 를 선택 하여 설정 합 니 다. 편집 결 과 는 다음 과 같 습 니 다. 모든 jar 를 libs/에 적 습 니 다.OK 를 누 르 면 설정 페이지 로 돌아 갑 니 다. 또한 설정 페이지 에서 build on make 를 선택 하 십시오. 마지막 으로 설정 페이지 의 OK 를 누 르 면 설정 이 완 료 됩 니 다.IDEA 로 돌아 가 Build->Build Artifacts 를 클릭 하고 build 를 선택 하 십시오. 우리 가 필요 로 하 는 jar 가방 이 생 성 됩 니 다.그 위 치 는 프로젝트 디 렉 터 리 의 out 디 렉 터 리 아래/out/artifacts/kafkacps_jar。 아래 에 올 바른 설정 목록 파일 내용 을 놓 습 니 다. maven-shade-plugin 으로 포장 합 니 다. 위의 포장 과정 은 너무 번 거 롭 고 Maven 관리 프로젝트 의 특색 도 이용 하지 못 했다.이 를 위해,Maven 의 maven-shade-plugin 플러그 인 을 이용 합 니 다.pom.xml 에 저 희 는 다음 과 같은 정 보 를 추가 하여 플러그 인 을 추가 합 니 다.
<plugin> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.4</version>
<configuration>
<createDependencyReducedPom>true</createDependencyReducedPom>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>Main.Main</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
이 안에'configuration'태그 내용 이 설정 되 어 있 습 니 다.이 태그 아래 에 transformer 태그 가 있 습 니 다.Main 함수 의 입 구 를 설정 하 는 데 사 용 됩 니 다(Main.Main ).물론 이 태그 의 내용 은 복잡 합 니 다.위 에 쓰 여 있 는 것 처럼 간단 하지 않 습 니 다.모든 종류 에서(제3자 Jar 포함)하나의 Main 방법 만 있 기 때 문 입 니 다.제3자 jar 에 Main 방법 이 있다 면 추가 설정 을 해 야 합 니 다.위 에서 이렇게 설정 하면 반드시 성공 할 수 있 는 것 은 아 닙 니 다. 이 코드 를 pom.xml 에 추가 한 후에 우 리 는 maven 의 명령 으로 포장 할 수 있 습 니 다.그 명령 은 다음 과 같다.
mvn clean compile // target
mvn clean package // ( , jar )
mvn clean install // ,
그리고 자바-jar cps-1.0-SNAPSHOT.jar 를 통 해 실 행 됩 니 다. IDEA 를 사용 하면 위의 명령 대신 자체 Maven 관리 도 구 를 사용 할 수 있 습 니 다.아래 그림 에서 보 듯 이 파란색 부분 을 차례대로 클릭 하 세 요. maven-assembly-plugin 으로 포장 위의 방법,우 리 는 많은 명령 을 눌 러 서 포장 해 야 한다.이번 에는 새로운 플러그 인 을 이용 하여 포장 이 더욱 간단 합 니 다.마찬가지 로 pom.xml 에 다음 코드 를 추가 합 니 다.위의 maven-shade-plugin 플러그 인 코드 는 삭제 할 수 있 습 니 다.플러그 인 코드 두 개 를 쓰 지 않 는 것 이 좋 습 니 다.
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>Main.Main</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
Main 함수 의 입 구 를 설정 하기 위해 manifest 탭 을 설정 합 니 다.그리고 다음 명령 을 통 해 포장 을 실현 합 니 다.mvn assembly:assembly
IDEA 를 사용 하면 위의 명령 대신 자체 Maven 관리 도 구 를 사용 할 수 있 습 니 다.아래 그림 에서 보 듯 이 파란색 부분 을 클릭 하 세 요. 그리고 자바-jar cps-1.0-SNAPSHOT-jar-with-dependencies.jar 를 실행 합 니 다. 이상 은 본 고의 모든 내용 입 니 다.본 고의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.또한 저 희 를 많이 지지 해 주시 기 바 랍 니 다!
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Gradle + Kotlin + Thymeleaf에서 Hello World
평소에는 toB의 업무 시스템을 만들고 있습니다.
사내에서의 기술의 업데이드가 없기 때문에 개인적으로 여러가지 배우려고 생각해, 처음에 Spring Boot로 간단한 프로젝트를 만들려고 했습니다만 생각보다 걸리거나 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.