Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java 9 Multi-release JAR: Platform-specifieke classversies benutten

In Java 9 is het JAR-formaat verbeterd zodat verschillende versies van Java-klassen of resources bewaard en gebruikt kunnen worden afhankelijk van het platform. In de JAR bevat het MANIFEST.MF-bestand in de hoofsectie de entry Multi-Release: true. De META-INF-directory bevat een versions-subdirectory wiens submappen (beginnend met 9 voor Java 9) versie-specifieke klassen en resourcebestanden bevatten.

In dit voorbeeld gebruiken we een multi-release JAR met twee versies van Tester.java, één voor JDK 7 en één voor JDK 9, en draaien we het op verschillende JDK-versies.

Stappen

Stap 1 – Maak map c:/test/java7/com/tutorialspoint. Maak Tester.java:

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

Stap 2 – Maak map c:/test/java9/com/tutorialspoint. Maak Tester.java:

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

Compileer de broncodes:

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

Maak de multi-release 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

Draaien met JDK 7:

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

Draaien met JDK 9:

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

Java

  1. Java-operators beheersen: typen, syntax en praktische voorbeelden
  2. Java-commentaar: typen, gebruik en best practices
  3. Java Enhanced For-lus beheersen: syntax, voorbeelden en best practices
  4. Java Strings beheersen: aanmaken, methodes en best practices
  5. Java interfaces meesteren: concepten, implementatie en best practices
  6. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  7. Java Try-with-resources meesteren: automatische resource management uitgelegd
  8. Java Annotaties uitgelegd: typen, plaatsing en praktische voorbeelden
  9. Java Assertions: een praktische gids voor bugdetectie en codebetrouwbaarheid
  10. Java Vector begrijpen: Gebruik, Kenmerken en Vergelijking met ArrayList
  11. Java 9 Multi-release JAR: Platform-specifieke classversies benutten