Java 11 JRE付きエクスポート

あんまり分かってないけど、とりあえずJRE付きでエクスポートまではできた。 Java 9以降のこと Oracle Java(JDK)のリリースモデルが変わった Public JRE(Oracleが無償配布してたJRE)がなくなった Oracle JDKの配布が有償のみになる(Java 11以降) 来月にはJava 10が登場し、9月にはJava 11が登場予定。新しいリリースモデルを採用した今後のJava、入手方法やサポート期間はこう変わる(OpenJDKに関する追記あり) - Publickey これまでの実行可能Jar Javaランタイム(JRE)を同梱しなくても、システムにインストールされたPublic JREで実行できた これから システムにJREがない 同様に実行できるようにするには、JREをアプリケーションに同梱する必要がある(?) これまでもrt.jarがJREの同梱された形としてあったはず Jigsawモジュールシステム Java 9以降導入されたJavaの依存関係システム。 依存関係はmodule-info.javaファイルに記述する。 module sample.module { requires java.base; // 不要(省略可) } モジュールシステムを学ぶ - Qiita 実行可能Jarのエクスポート(Maven、JREなし) Java 8まで、こんな感じだった。 Maven pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example.sample</groupId> <artifactId>Sample</artifactId> <version>1.0-SNAPSHOT</version> <properties> <java.version>8</java.version> <maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.target>${java.version}</maven.compiler.target> </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.1.1</version> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <mainClass>com.example.sample.Main</mainClass> </manifest> </archive> </configuration> </plugin> </plugins> </build> </project> JREの生成(手動、module-info使用) アプリケーション配布用に小さなJREを作る Jigsaw 勉強メモ - Qiita コンパイルしたクラスファイルのディレクトリを指定 ...

2019年2月6日 · aoirint