다음과 같은 JAR 파일을 작성했습니다.
jar cf Predit.jar *.*
이 JAR 파일을 두 번 클릭하여 실행했습니다 (작동하지 않았습니다). 그래서 다음과 같이 DOS 프롬프트에서 실행했습니다.
java -jar Predit.jar
“주 클래스를로드하지 못했습니다”예외가 발생했습니다. 그래서이 JAR 파일을 추출했습니다.
jar -xf Predit.jar
클래스 파일을 실행했습니다.
java Predit
잘 작동했습니다. JAR 파일이 작동하지 않는 이유를 모르겠습니다. JAR 파일을 실행하는 단계를 알려주십시오
답변
jar 파일 매니페스트에 Main-Class를 지정해야합니다.
오라클의 튜토리얼 에는 완전한 데모가 포함되어 있지만 여기에는 처음부터 다른 데모가 있습니다. 두 개의 파일이 필요합니다 :
Test.java :
public class Test
{
public static void main(String[] args)
{
System.out.println("Hello world");
}
}
manifest.mf :
Manifest-version: 1.0
Main-Class: Test
텍스트 파일은 줄 바꿈 또는 캐리지 리턴으로 끝나야합니다. 마지막 줄은 줄 바꿈이나 캐리지 리턴으로 끝나지 않으면 제대로 구문 분석되지 않습니다.
그런 다음 다음을 실행하십시오.
javac Test.java
jar cfm test.jar manifest.mf Test.class
java -jar test.jar
산출:
Hello world
답변
java -classpath Predit.jar your.package.name.MainClass
답변
jar 검사를 실행하기 전에 MANIFEST.MF 파일 Main-Class: classname
에서 사용 가능하거나 사용 불가능 합니다. MANIFEST.MF가 jar에 있습니다.
java -jar filename.jar
답변
jar에 manifest를 추가해야합니다. 이는 java 런타임에 기본 클래스가 무엇인지 알려줍니다. 다음 내용으로 ‘Manifest.mf’파일을 만듭니다.
Manifest-Version: 1.0
Main-Class: your.programs.MainClass
‘your.programs.MainClass’를 실제 메인 클래스로 변경하십시오. 이제 파일을 ‘META-INF’라는 하위 폴더에있는 Jar 파일에 넣습니다. 이를 위해 ZIP 유틸리티를 사용할 수 있습니다.
답변
.class, .jar 파일을 작성하는 매우 간단한 방법입니다.
jar 파일을 실행합니다. 매니페스트 파일에 대해 너무 걱정할 필요가 없습니다. 간단하고 우아하게 만드십시오.
자바 샘플 Hello World Program
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
클래스 파일 컴파일
javac HelloWorld.java
jar 파일 작성
jar cvfe HelloWorld.jar HelloWorld HelloWorld.class
또는
jar cvfe HelloWorld.jar HelloWorld *.class
jar 파일 실행
java -jar HelloWorld.jar
또는
java -cp HelloWorld.jar HelloWorld
답변
jar 파일을 실행하기 위해 매니페스트를 만들지 않으려면 jar 파일을 실행할 때 명령 줄에서 직접 주 클래스를 참조 할 수 있습니다.
java -jar Predit.jar -classpath your.package.name.Test
jar 파일에서 실행할 기본 클래스를 설정합니다.
답변
자바
class Hello{
public static void main(String [] args){
System.out.println("Hello Shahid");
}
}
manifest.mf
Manifest-version: 1.0
Main-Class: Hello
명령 행에서 :
$ jar cfm HelloMss.jar manifest.mf Hello.class
$ java -jar HelloMss.jar
산출:
Hello Shahid