Java 생성 .jar 파일
Java를 배우고 있는데 문제가 있습니다. 6 개의 다른 클래스를 만들었으며 각각 고유 한 main()
방법이 있습니다. .jar
각 클래스에 대한 실행 .jar
파일 , 즉 6 개의 실행 파일 을 만들고 싶습니다 .
지금까지 나는 시도했다
java -jar cf myJar.jar myClass.class
그리고 'Unable to access jarfile cf'를 얻습니다 . 내가 뭘 잘못하고 있는데 뭔지 모르겠어요. 의미가 있다면 Eclipse IDE도 사용하고 있습니다.
.jar 파일을 만들려면 jar
대신 java
다음 을 사용해야 합니다 .
jar cf myJar.jar myClass.class
또한 실행 가능하게하려면 응용 프로그램에 대한 진입 점 (예 :가있는 클래스 public static void main(String[] args)
)을 지정해야합니다. 이는 일반적으로 헤더 (예 :) 를 포함 하는 매니페스트 파일을 생성하여 수행됩니다 .Main-Class
Main-Class: myClass
그러나 Mark Peters가 지적했듯이 JDK 6에서는 e
옵션을 사용하여 진입 점을 정의 할 수 있습니다 .
jar cfe myJar.jar myClass myClass.class
마지막으로 실행할 수 있습니다.
java -jar myJar.jar
또한보십시오
당신이 이클립스를 사용하고 있다고 언급 한 사인들 ... 이클립스는 메인이있는 각 클래스를 한 번 실행하는 한 당신을 위해 JAR을 생성 할 수있다. 프로젝트를 마우스 오른쪽 단추로 클릭하고 내보내기를 클릭 한 다음 Java 폴더에서 "실행 가능한 JAR 파일"을 선택하십시오. 시작 구성에서 클래스 이름을 선택하고 jar를 저장할 위치를 선택하고 필요한 경우 라이브러리 처리 방법을 결정합니다. 완료를 클릭하고 바지에 손을 닦으십시오.
종종 -e
스위치로 얻는 것보다 매니페스트에 더 많은 것을 넣어야 합니다.이 경우 구문은 다음과 같습니다.
jar -cvfm myJar.jar myManifest.txt myApp.class
"상세한 jarFilename manifestFilename 작성"과 포함 할 파일이 뒤 따릅니다.
제공하는 매니페스트 파일의 이름은 무엇이든 될 수 있으며 jar
자동으로 이름을 바꾸고 jar 파일 내의 올바른 위치에 넣습니다.
방법 1 :
메인 클래스 testa를 포함하는 java 파일 test.java를 갖게합시다. 이제 먼저 javac test.java로 간단히 Java 파일을 컴파일하고 동일한 디렉토리에 manifest.txt 파일을 만들고 Main-Class : mainclassname을 작성합니다. 예 :
Main-Class: testa
그런 다음 다음 명령으로 jar 파일을 만듭니다.
jar cvfm anyname.jar manifest.txt testa.class
그런 다음이 명령으로 jar 파일을 실행합니다. java -jar anyname.jar
방법 2 :
one이라는 이름의 패키지 하나가 있고 모든 클래스가 그 안에 있습니다. 그런 다음 다음 명령으로 jar 파일을 만듭니다.
jar cf anyname.jar one
그런 다음 anyname.jar 파일의 META-INF 디렉토리에있는 manifest.txt를 열고
Main-Class: one.mainclassname
세 번째 줄에서 다음 명령으로 jar 파일을 실행합니다.
java -jar anyname.jar
하나 이상의 클래스 파일을 갖는 jar 파일을 만들려면 : jar cf anyname.jar one.class two.class three.class ......
6 개의 클래스를 모두 6 개의 다른 프로젝트에 배치합니다. 그런 다음 6 개 프로젝트 모두의 jar 파일을 만듭니다. 이렇게하면 6 개의 실행 가능한 jar 파일이 생성됩니다.
참고 URL : https://stackoverflow.com/questions/4597866/java-creating-jar-file
'IT Share you' 카테고리의 다른 글
Mobile Safari의 고정 위치 (0) | 2020.11.10 |
---|---|
R 플롯을 LaTeX로 가져 오나요? (0) | 2020.11.10 |
Python의 상속 및 init 메서드 (0) | 2020.11.10 |
math.h를 포함 했음에도 불구하고 C에서 pow ()에 대한 정의되지 않은 참조 (0) | 2020.11.10 |
data.frame의 두 열 사이에 열 추가 (삽입) (0) | 2020.11.10 |