두 개의 간단한 Java Swing 파일로 구성된 프로그램이 있습니다.
내 프로그램에 대한 실행 가능한 JAR 파일을 어떻게 만듭니 까?
두 개의 간단한 Java Swing 파일로 구성된 프로그램이 있습니다.
내 프로그램에 대한 실행 가능한 JAR 파일을 어떻게 만듭니 까?
답변:
jar 파일은 단순히 Java 파일 모음을 포함하는 파일입니다. jar 파일을 실행 가능하게 만들려면 jar 파일에서 main
클래스가있는 위치를 지정해야 합니다. 예제 코드는 다음과 같습니다.
public class JarExample {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
// your logic here
}
});
}
}
클래스를 컴파일하십시오. 항아리를 만들려면 매니페스트 파일 ( MANIFEST.MF
)도 만들어야합니다 . 예를 들면
Manifest-Version: 1.0
Main-Class: JarExample
컴파일 된 출력 클래스 파일 (JarExample.class, JarExample $ 1.class)과 매니페스트 파일을 동일한 폴더에 배치합니다. 명령 프롬프트에서 파일이있는 폴더로 이동하고 jar 명령을 사용하여 jar를 만듭니다. 예 (매니페스트 파일의 이름을 jexample.mf로 지정하는 경우)
jar cfm jarexample.jar jexample.mf *.class
실행 가능한 jarexample.jar이 생성됩니다.
jar cvfe jarexample.jar com.example.jar.JarExample *.class
jar cvfe myjar.jar package.MainClass *.class
어디는 MainClass
당신과 함께 클래스입니다 main
방법, 그리고 package
이다 MainClass
의 패키지로 제공된다.
이 작업을 수행하기 전에 .java
파일을 .class
파일 로 컴파일해야 합니다 .
c create new archive
v generate verbose output on standard output
f specify archive file name
e specify application entry point for stand-alone application bundled into an executable jar file
이 답변은 다른 답변에 대한 Powerslave의 의견에서 영감을 얻었습니다.
Error: Could not find or load main class mtx.testClass Caused by: java.lang.ClassNotFoundException: mtx.testClass
testClass
당신의 일에 정의 된 .class
파일? .java
이 명령을 실행하기 전에 소스 ( ) 파일 을 컴파일했는지 확인하십시오 . 또한 일반적으로 클래스는 UpperCamelCase 여야하며 TestClass
대신 이름을 바꿀 수 있습니다 .
maven을 사용하는 경우 pom.xml 파일에 다음을 추가 하십시오.
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>com.path.to.YourMainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
그런 다음 mvn package
. jar 파일은 대상 디렉토리 아래에 있습니다 .
이 질문에 답하기에는 너무 늦었습니다. 그러나 누군가가 지금이 답변을 찾고 있다면 오류없이 실행되도록 만들었습니다.
먼저 maven을 다운로드 하여 경로에 추가하십시오 . [ mvn --version
]는 경로에 올바르게 추가 한 경우 버전 사양을 제공합니다.
이제 maven 프로젝트 [ pom.xml
] 에 다음 코드를 추가합니다. 다음 코드에서 [ com.example.test.Test ]에 대한 기본 파일 진입 점으로 바꿉니다 .
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>
your_package_to_class_that_contains_main_file .MainFileName</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
이제 CMD
프로젝트 의 명령 줄 [ ] 로 이동하여 입력 mvn package
하면 디렉토리 ProjectName-0.0.1-SNAPSHOT.jar
아래에 jar 파일이 생성됩니다 target
.
이제으로 대상 디렉토리 로 이동하십시오 cd target
.
마지막으로 입력 java -jar jar-file-name.jar
하고 예를 입력 하면 프로그램에 오류가 없으면 성공적으로 작동합니다.