산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

Java 9 멀티릴리스 JAR: 플랫폼별 클래스 버전 활용

Java 9에서는 JAR 형식이 개선되어 서로 다른 버전의 Java 클래스나 리소스를 유지하고 플랫폼에 따라 사용할 수 있게 되었습니다. JAR에서 MANIFEST.MF 파일의 메인 섹션에 Multi-Release: true 항목이 있습니다. META-INF 디렉터리에는 versions 하위 디렉터리가 있으며, 그 하위 디렉터리(Java 9부터는 9로 시작)에 버전별 클래스와 리소스 파일이 저장됩니다.

이 예제에서는 멀티릴리스 JAR을 사용해 Tester.java 파일의 두 버전(JDK 7용, JDK 9용)을 두고 다른 JDK 버전에서 실행합니다.

단계

1단계 - c:/test/java7/com/tutorialspoint 폴더 생성. Test.java 생성:

Tester.java (Java 7용)

package com.tutorialspoint;
public class Tester {
    public static void main(String[] args) {
        System.out.println("Inside java 7");
    }
}

2단계 - c:/test/java9/com/tutorialspoint 폴더 생성. Test.java 생성:

Tester.java (Java 9용)

package com.tutorialspoint;
public class Tester {
    public static void main(String[] args) {
        System.out.println("Inside java 9");
    }
}

소스 코드 컴파일:

C:\test > javac --release 9 java9/com/tutorialspoint/Tester.java
C:\JAVA > javac --release 7 java7/com/tutorialspoint/Tester.java

멀티릴리스 JAR 생성:

C:\JAVA > jar -c -f test.jar -C java7 . --release 9 -C java9.
Warning: entry META-INF/versions/9/com/tutorialspoint/Tester.java, multiple resources with same name

JDK 7로 실행:

C:\JAVA > java -cp test.jar com.tutorialspoint.Tester
Inside Java 7

JDK 9로 실행:

C:\JAVA > java -cp test.jar com.tutorialspoint.Tester
Inside Java 9

java

  1. Java 연산자 마스터하기: 종류, 문법, 실전 예제
  2. Java 주석: 종류, 사용법, 모범 사례
  3. Java 향상된 for 루프(for-each) 완벽 가이드: 문법, 예제, 비교
  4. Java String 마스터하기: 생성, 메서드, 모범 사례
  5. Java 인터페이스 마스터: 개념, 구현, 모범 사례
  6. Java 익명 내부 클래스 마스터: 정의, 문법, 실전 예제
  7. Java Try-with-Resources 마스터: 자동 리소스 관리 완전 해설
  8. Java 애너테이션 완전 해설: 종류, 배치 위치, 실전 예제
  9. Java Assertion(어설션) 실전 가이드: 버그 조기 발견과 코드 신뢰성 확보
  10. Java Vector 완벽 가이드: 사용법, 특징, ArrayList와의 비교