【发布时间】:2019-07-09 19:47:00
【问题描述】:
我感觉 Jigsaw 模块于 2017 年 9 月正式随 Java 9 一起发布,也就是差不多两年前。 JDK 11 和也许 JDK 12 在生产中被广泛使用,但是 Jigsaw 基本上没有被使用,也没有得到社区的支持,也没有准备好供普通的 Java 开发人员使用。整个 Java 生态系统使用 Maven/Gradle/SBT 之类的构建工具,它们专门使用经典的 Maven 样式依赖系统,根本不使用 Jigsaw。
我已经阅读了官方的快速入门教程: http://openjdk.java.net/projects/jigsaw/quick-start
这行得通,但似乎整个 Java 生态系统基本上都在忽略 Jigsaw,而且在短期内,这种情况不太可能改变。
这是正确的吗?发生了什么?
【问题讨论】:
-
Jigsaw 解决了一个不存在的问题(可见性),也没有解决一个确实存在的问题(版本依赖)。 编辑:确实,用模块替换
rt.jar是一个不错的举措。 -
为什么你会说 Jigsaw 模块还没有准备好供普通 Java 开发人员使用?当您这么说时,您如何定义“常规 Java 开发人员”? Java 模块可供任何想学习如何使用它们的人使用,就像 Java 语言可供任何想学习该语言的程序员使用一样。
-
@Andreas,有没有使用第三方模块依赖的简单“hello world”类型拼图项目的例子?我找不到任何东西。我试图创建一个依赖于 slf4j-simple 1.8 (beta) 并且遇到了麻烦。
-
优势也在别处。当您部署完整的可执行文件以及打包的 JRE 时,结果现在的大小要小得多。因为您现在可以省略所有您从不使用的基本模块。这是免费的,无需做任何事情。与提供多个模块的大型框架一样,您现在可以免费删除所有未使用的内容。
标签: java java-platform-module-system