Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Java 9 — мультирелизный JAR

В java 9 представлена ​​новая функция, в которой формат jar был улучшен, чтобы можно было поддерживать и использовать разные версии класса или ресурсов java в соответствии с платформой. В JAR файл MANIFEST.MF имеет запись Multi-Release:true в своем основном разделе. Каталог META-INF также содержит подкаталог версий, в подкаталогах которого (начиная с 9 для Java 9) хранятся классы и файлы ресурсов для конкретных версий.

В этом примере мы будем использовать банку с несколькими выпусками, чтобы иметь две версии файла Tester.java, одну для jdk 7 и одну для jdk 9, и запускать его на разных версиях jdk.

Шаги

Шаг 1 − Создайте папку c:/test/java7/com/tutorialspoint. Создайте Test.java со следующим содержимым —

Тестер.java

Живая демонстрация
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 со следующим содержимым —

Тестер.java

Живая демонстрация
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

Создайте банку с несколькими выпусками

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 для каждого цикла
  4. Java-строки
  5. Java-интерфейс
  6. Анонимный класс Java
  7. Java-проба с ресурсами
  8. Java-аннотации
  9. Утверждения Java
  10. Java вектор