programing

JAR 파일 실행 방법

bestcode 2022. 12. 27. 21:19
반응형

JAR 파일 실행 방법

다음과 같은 JAR 파일을 만들었습니다.

jar cf Predit.jar *.*

이 JAR 파일을 더블 클릭하여 실행했습니다(실행하지 않았습니다).DOS 프롬프트에서 다음과 같이 실행했습니다.

java -jar Predit.jar

메인 클래스를 로드하지 못했습니다. 예외가 발생했습니다.그래서 이 JAR 파일을 추출했습니다.

jar -xf Predit.jar

수업 파일을 실행했습니다.

java Predit

잘 됐어요.JAR 파일이 왜 작동하지 않았는지 모르겠습니다.JAR 파일을 실행하는 절차를 알려주세요.

jar 파일 매니페스트에 Main-Class를 지정해야 합니다.

Oracle의 튜토리얼에는 완전한 데모가 포함되어 있지만, 여기에 처음부터 다시 데모가 있습니다.다음 두 개의 파일이 필요합니다.

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

해 주세요.Main-Class: classname사용할 수 있는지 없는지 확인합니다.MF 파일매니페스토MF는 항아리 안에 있습니다.

java -jar filename.jar

기본 클래스가 무엇인지 Java 런타임에 알려주는 매니페스트를 jar에 추가해야 합니다.다음 내용으로 'Manifest.mf' 파일을 만듭니다.

Manifest-Version: 1.0
Main-Class: your.programs.MainClass

your. 프로그램을 변경합니다.MainClass'를 실제 메인 클래스로 이동합니다.이제 파일을 Jar 파일의 'META-INF'라는 하위 폴더에 넣습니다.여기에는 임의의 ZIP 유틸리티를 사용할 수 있습니다.

.class .jar 파일을 만드는 매우 간단한 접근법입니다.

jar 파일 실행 중.매니페스트 파일에 대해 너무 걱정할 필요는 없습니다.단순하고 요령 있게 하세요.

Java 샘플 Hello World 프로그램

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 파일을 실행할 때 명령줄에서 직접 main-class를 참조할 수 있습니다.

java -jar Predit.jar -classpath your.package.name.Test

그러면 jar 파일에서 실행할 메인클래스가 설정됩니다.

자바

class Hello{
   public static void main(String [] args){
    System.out.println("Hello Shahid");
   }
}

매니페스트

Manifest-version: 1.0
Main-Class: Hello

명령줄:

$ jar cfm HelloMss.jar  manifest.mf Hello.class 
$ java -jar HelloMss.jar

출력:

Hello Shahid

이러한 세부 정보를 다루지 않으려면 Eclipse 또는 NetBeans의 내보내기 jar Assistant를 사용할 수도 있습니다.

Eclipse 실행 가능 JAR 파일

프로젝트 생성 – Java 프로젝트 생성 –RunnableJAR

  • 사용된 jar 파일이 있는 경우 프로젝트 빌드 경로에 추가합니다.
  • 실행 가능한 Jar 파일을 만드는 동안 main()이 있는 클래스를 선택합니다.여기에 이미지 설명 입력

메인 클래스

public class RunnableMainClass {
    public static void main(String[] args) throws InterruptedException {
        System.out.println("Name : "+args[0]);
        System.out.println(" ID  : "+args[1]);
    }
}

인수를 지정하여 Java 프로그램(cmd)을 사용하여 Jar 파일을 실행하고 출력 및 표시를 이클립스 콘솔에서 가져옵니다.

public class RunJar { 
    static StringBuilder sb = new StringBuilder();
    public static void main(String[] args) throws IOException {
        String jarfile = "D:\\JarLocation\\myRunnable.jar";
        String name = "Yash";
        String id = "777";

        try { // jarname arguments has to be saperated by spaces
            Process process = Runtime.getRuntime().exec("cmd.exe start /C java -jar "+jarfile+" "+name+" "+id);
                    //.exec("cmd.exe /C start dir java -jar "+jarfile+" "+name+" "+id+" dir");
            BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream ()));
            String line = null;
            while ((line = br.readLine()) != null){
                sb.append(line).append("\n");
            }
            System.out.println("Console OUTPUT : \n"+sb.toString());
            process.destroy();
        }catch (Exception e){
            System.err.println(e.getMessage());
        }
   }
}

Eclipse에서 바로 가기 찾기:

도움말 help도움말 목차 ment Java 개발 사용자 가이드 re레퍼런스 and메뉴 및 액션

폴더 구조는 다음과 같습니다.

D:\Java Projects\OlivePressApp\com\lynda\olivepress\Main.class D:\JavaProjects\Olive Press App\com\lynda\olive press\프레스OlivePress.class D:\Java Projects\OlivePressApp\com\lynda\olivepress\olives\Kalamata.class D:\JavaProjects\OlivePressApp\com\livepress\olives\Ligurian.class D:\Java Projects\OlivePressApp\com\livepress\olives\올리브 클래스

Main.class패키지에 들어 있다com.lynda.olivepress

다음 두 가지 패키지가 있습니다.

com.lynda.com.lynda.press.프레스

com.lynda.com.lynda.press.d

1) 파일 생성:"Manifest.txt"첫 번째 줄과 두 번째 줄의 빈 줄이 있습니다.

Main-Class: com.lynda.olivepress.Main

D:\Java Projects\올리브 프레스 앱\Manifest.txt

2) 매니페스트 및 메인 클래스 엔트리 포인트를 포함한 JAR 작성

D:\Java Projects\올리브 프레스 앱>jar cfm OlivePressApp.jar Manifest.txt com/lynda/olivepress/Main.class com/lynda/olivepress/*

3) JAR 실행

java -jar OlivePressApp.jar

주의:com/lynda/olivepress/*포인트 1) 이전에 전술한 다른 2개의 패키지를 포함하는 것을 의미합니다.

jar를 실행하려면 먼저 다음을 생성해야 합니다.

실행 가능 항아리

그리고나서

java -jar xyz.항아리

명령어는 동작합니다.

언급URL : https://stackoverflow.com/questions/1238145/how-to-run-a-jar-file

반응형