Maven有新的Java 9jlink的插件吗?我在网上搜索过,但没有找到任何来自Maven团队的官方插件。
jlink
csga3l581#
是。在Github/maven-plugins上为相同的创建一个已取得一些进展。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jlink-plugin</artifactId> <version>3.0.0-SNAPSHOT</version> </plugin>
该插件在其代码中读到自适应JEP-282和JEP-220的建议。虽然这看起来像是一个链接,但答案太多了。在Github上也有一个来自@khmarbaise的工作示例,它需要一个工具链-
<configuration> <jdkHome>/Library/Java/JavaVirtualMachines/jdk1.9.0_ea+170.jdk/Contents/Home</jdkHome> </configuration>
加上作者的旁注引用-目前不超过一个概念证明。这里的一切都是推测!
Edit 1:-正如评论中所分享的,更多详细信息可在@How to create a Java runtime with Maven找到。Edit 2:-日期:2018年11月10日,用户可以升级到使用maven-jlink-plugin:3.0.0-alpha-1,但仍然可以使用provide some valuable feedback。
maven-jlink-plugin:3.0.0-alpha-1
owfi6suc2#
我正在开发ModiTect,它是Java 9模块的通用工具。ModiTect Maven插件的目标之一是允许您通过jlink创建模块运行时映像:
<plugin> <groupId>org.moditect</groupId> <artifactId>moditect-maven-plugin</artifactId> <version>1.0.0-SNAPSHOT</version> <executions> <execution> <id>create-runtime-image</id> <phase>package</phase> <goals> <goal>create-runtime-image</goal> </goals> <configuration> <modulePath> <path>${project.build.directory}/modules</path> </modulePath> <modules> <module>com.example.module1</module> <module>com.example.module2</module> </modules> <launcher> <name>helloWorld</name> <module>com.example.module1</module> </launcher> <outputDirectory> ${project.build.directory}/jlink-image </outputDirectory> </configuration> </execution> </executions> </plugin>
该插件目前正在积极开发中,暂时必须从源代码构建(不久将向Maven Central部署第一个版本)。
tyky79it3#
mvn-jlink plugin允许调用jdeps和jlink(以及jdk提供的任何工具),还可以从ADOPT和LIBERICA下载并解包所需的openjdk版本,这种方式允许构建跨平台映像
<plugin> <groupId>com.igormaznitsa</groupId> <artifactId>mvn-jlink-wrapper</artifactId> <version>1.0.0</version> <executions> <execution> <id>call-jlink</id> <goals> <goal>jlink</goal> </goals> <configuration> <jdepsReportPath>${project.build.directory}${file.separator}jdeps.out</jdepsReportPath> <output>${project.build.directory}${file.separator}preparedJDK</output> <addModules> <module>java.compiler</module> </addModules> <options> <option>--compress=2</option> <option>--no-header-files</option> <option>--no-man-pages</option> </options> </configuration> </execution> </executions> </plugin>
zbsbpyhn4#
也许可以看看https://github.com/ghackenberg/jigsaw-maven-plugin。该插件还支持
jdeps --generate-module-info
javac
jar
jpackage
您可以在Github README page上找到插件文档。
<plugin> <groupId>io.github.ghackenberg</groupId> <artifactId>jigsaw-maven-plugin</artifactId> <version>1.1.3</version> </plugin>
4条答案
按热度按时间csga3l581#
是。在Github/maven-plugins上为相同的创建一个已取得一些进展。
该插件在其代码中读到自适应JEP-282和JEP-220的建议。
虽然这看起来像是一个链接,但答案太多了。在Github上也有一个来自@khmarbaise的工作示例,它需要一个工具链-
加上作者的旁注引用-
目前不超过一个概念证明。这里的一切都是推测!
Edit 1:-正如评论中所分享的,更多详细信息可在@How to create a Java runtime with Maven找到。
Edit 2:-日期:2018年11月10日,用户可以升级到使用
maven-jlink-plugin:3.0.0-alpha-1
,但仍然可以使用provide some valuable feedback。owfi6suc2#
我正在开发ModiTect,它是Java 9模块的通用工具。ModiTect Maven插件的目标之一是允许您通过jlink创建模块运行时映像:
该插件目前正在积极开发中,暂时必须从源代码构建(不久将向Maven Central部署第一个版本)。
tyky79it3#
mvn-jlink plugin允许调用jdeps和jlink(以及jdk提供的任何工具),还可以从ADOPT和LIBERICA下载并解包所需的openjdk版本,这种方式允许构建跨平台映像
zbsbpyhn4#
也许可以看看https://github.com/ghackenberg/jigsaw-maven-plugin。该插件还支持
jdeps --generate-module-info
+javac
+jar
用于修补未命名的模块,jlink
,用于创建运行时映像,以及jpackage
用于创建应用程序安装程序 (但仅在JDK 14之后可用)。您可以在Github README page上找到插件文档。