단일 모듈과 일부 종속성이 포함 된 프로젝트가 있습니다. 컴파일 된 모듈이 들어있는 별도의 디렉토리에 항아리를 만들고 싶습니다. 또한 모듈 옆에 종속성을 표시하고 싶습니다.
IntelliJ의 “build jar”프로세스를 어떻게 비틀어도 모듈의 출력은 비어 있습니다 (META-INF 파일 외에).
답변
다음은 인 IntelliJ (10)와 함께 항아리를 구축하는 방법 http://blogs.jetbrains.com/idea/2010/08/quickly-create-jar-artifact/
File-> Project Structure-> Project Settings-> Artifacts-> 클릭 green plus sign-> Jar->From modules with dependencies...
위의 “skeleton”은 jar가 저장 될 위치로 설정됩니다. 실제로 빌드하고 저장하려면 다음을 수행하십시오.
대상 항아리로 추출
확인
빌드 | 유물 제작 | 짓다
에서 .jar 파일을 추출하십시오.
ProjectName | 아웃 | 유물 | ProjectName_jar | ProjectName.jar
답변
이것은 2017 년 여전히 문제이며, 누군가에게 도움이되기를 바랍니다. IntelliJ 2017에서 작동하는 jar를 만들 수있는 두 가지 가능성을 발견했습니다 .2
1. IntelliJ에서 아티팩트 생성 :
- 프로젝트 구조로 이동 :
- 새 이슈를 만듭니다.
- 기본 클래스를 선택하고 매니페스트 폴더를 변경하십시오.
매니페스트 디렉토리를 변경해야합니다.
<project folder>\src\main\java
“java”를 “resources”로 교체
<project folder>\src\main\resources
이것이 다음과 같이 보일 것입니다 :
-
그런 다음 항아리에 포장하려는 종속성을 선택하거나 항아리 파일 근처에
-
아티팩트를 빌드하려면 아티팩트를 빌드하고 “다시 빌드”를 선택하십시오. jar 파일과 그 종속 항목이있는 “out”폴더를 만듭니다.
2. maven-assembly-plugin 사용
pom 파일에 빌드 섹션 추가
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<finalName>ServiceCreate</finalName>
<appendAssemblyId>false</appendAssemblyId>
<archive>
<manifest>
<mainClass>com.svt.optimoo.App</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
- 새로운 실행 / 디버그 구성을 작성하십시오.
- 응용 프로그램을 선택하십시오 :
- 양식을 작성
- 빌드 후 마지막으로 실행될 “어셈블리 : 단일”메이븐 목표 추가
- 저장 후 실행
이 절차는 “target”폴더 아래에 jar 파일을 생성합니다
답변
최근 에이 문제가 있었으며 이전 솔루션이나 링크에 세부 정보가 없으면이 단계를 쉽게 수행 할 수 있다고 생각합니다.
.jar
IntelliJ IDEA 14.1.5를 사용하여 작성하는 방법 :
- 파일> 모두 저장.
- 메인 메소드로 드라이버 또는 클래스를 실행하십시오.
- 파일> 프로젝트 구조.
- “아티팩트”탭을 선택하십시오.
- 창 상단 근처에있는 녹색 더하기 버튼을 클릭하십시오.
- 추가 드롭 다운 메뉴에서 JAR을 선택하십시오. “종속성이있는 모듈에서”를 선택하십시오.
- 메인 클래스를 선택하십시오.
- 라디오 버튼은 “대상 JAR로 추출”을 선택해야합니다. OK를 누릅니다.
- “제조업체”확인란을 선택하십시오.
- 적용 및 확인을 누릅니다.
- 기본 메뉴에서 빌드 드롭 다운을 선택하십시오.
- 옵션 빌드 아티팩트를 선택하십시오.
답변
답변
다음은 maven 프로젝트의 단계별 예입니다.
방법 1 : maven 및 pom.xml을 사용하여 jar 빌드
- 파일, 새로운 프로젝트, maven
- 패키지를 만들고 해당 패키지 내에 Java 프로그램을 만듭니다.
-
pom.xml에서 maven-jar-plugin을 추가하십시오.
<plugin> <!-- Build an executable JAR --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.1.0</version> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> <mainClass>somePackage.sample</mainClass> </manifest> </archive> </configuration> </plugin>
화면 캡처 :
4. 검색 아이콘을 클릭하고 maven을 입력하여 maven 프로젝트 상자를 엽니 다.
방법 2 : pom.xml 변경없이 maven으로 jar 빌드
- 파일, 새로운 프로젝트, maven
- 패키지를 만들고 해당 패키지 내에 Java 프로그램을 만듭니다 (위와 동일)
- File-> Project Structure-> Project Settings-> Artifacts-> 클릭 green plus sign-> Jar->From modules with dependencies
매우 중요!
MANIFEST.MF는 resources 폴더에 있어야하고 Main.Class는 {package}-{class-name-that-contains-main-class}를 참조해야합니다.
- 그런 다음 메뉴에서 빌드, 아티팩트 빌드, 빌드를 클릭하십시오.
- out 폴더에서 항아리를 찾으십시오.
- 그것을 실행 🙂
답변
아마 조금 늦었지만 winrar로 열고 META-INF 폴더에서 ECLIPSEF.RSA 및 ECLIPSEF.SF를 삭제하고 “Main-class : main_class_name”( “.class”없이) )에서 MANIFEST.MF. 마지막 줄 다음에 “Enter”를 두 번 눌렀는지 확인하십시오. 그렇지 않으면 작동하지 않습니다.