- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
Java 的包管理系统对我来说总是简单而有效。它被 JDK 本身大量使用。我们一直在用它来模仿命名空间和模块的概念。
Project Jigsaw(又名 Java Platform Module System)试图填写什么?
来自官方网站:
The goal of this Project is to design and implement a standard module system for the Java SE Platform, and to apply that system to the Platform itself and to the JDK.
最佳答案
Jigsaw 和 OSGi 正在尝试解决相同的问题:如何允许粗粒度的模块进行交互,同时屏蔽它们的内部结构。
在 Jigsaw 的例子中,粗粒度的模块包括 Java 类、包及其依赖项。
这是一个示例:Spring 和 Hibernate。两者都依赖于第 3 方 JAR CGLIB,但它们使用不同的、不兼容的 JAR 版本。如果你依赖标准的JDK,你能做什么?包括 Spring 想要打破 Hibernate 的版本,反之亦然。
但是,如果您有像 Jigsaw 这样的高级模型,您可以轻松地在不同模块中管理 JAR 的不同版本。将它们视为更高级别的包。
如果您构建 Spring from the GitHub source你也会看到的。他们重做了框架,因此它由几个模块组成:核心、持久性等。您可以挑选应用程序所需的最小模块依赖集,而忽略其余的。它曾经是一个 Spring JAR,其中包含所有 .class 文件。
更新:五年后 - Jigsaw 可能还有一些 issues解决。
关于java - 为什么项目 Jigsaw/JPMS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844829/
来自Jigsaw Project : Make it easier for developers to construct and maintain libraries and large appli
我正在尝试创建一个模块化的可执行 jar 文件,它可以使用 java -p -m 运行在 Java 9.0.1 上。 这在使用 jar cfe test.jar test.Main -C clas
maven 是否有适用于新 Java 9 的插件 jlink 我在网上搜索过,但未能从 maven 团队找到任何官方信息。 最佳答案 是。在 Github/maven-plugins 上创建一个已经取
Java 9/10。一个多星期以来,我一直在为一个简单的项目而苦苦挣扎。 正如您在图片中看到的,我想使用 commons-collections 作为一个自动模块(我尝试用 maven 添加它,但效果
Java 的包管理系统对我来说总是简单而有效。它被 JDK 本身大量使用。我们一直在用它来模仿命名空间和模块的概念。 Project Jigsaw(又名 Java Platform Module Sy
我尝试运行一个非常简单的使用 java 9 模块的 gradle 项目,但我收到以下错误。 /home/vadim/IdeaProjects/test_modules/src/main/java/mo
我感觉 Jigsaw 模块于 2017 年 9 月正式随 Java 9 一起发布,这已经是近两年前的事了。 JDK 11 或许还有 JDK 12 在生产中广泛使用,但 Jigsaw 基本上没有被使用,
我正在尝试将我的一个项目分成拼图模块。一个痛点是在多个模块中使用 .jar 库并在其中一些模块中扩展其功能。 更具体地说,我通过 module-info.java 文件中的“需要传递的minimal.
我目前正在评估为桌面应用程序开发插件概念的可能性。 在研究时,我发现了 OSGI 和 Java 平台模块系统(或 Project Jigsaw)。 我对 Java 平台模块系统规范有点困惑。 Java
Java 9 计划很快发布(7 月 27 日)。是否有计划发布符合 Java 9 的模块化 Spring 项目版本(Java 9 项目 Jigsaw)? 最佳答案 关注 module-info.jav
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
我在 Eclipse Oxygen.3a 中使用 Java 9.0.4 JUnit 5 位于 modul-path 上,并且在 module-info.java 中是必需的。 当我尝试运行代码时,我总
我了解 Java 平台模块系统 (JPMS) 对大型应用程序的好处,但是否有任何理由将小型库或应用程序制作成(单个)模块?如果是这样,是Modular Jar Files实现此目的的最佳方法,还是首选
Soooo,我想做的本质上是一个拼图游戏。左侧是一个区域,有十几个重叠的“撕开”纸片(所有不同的不规则形状,带有 alpha)的重叠 .png 文件,当放在一起时,按顺序放在右侧,形成一张纸上面有注释
Java 9(特别是 Jigsaw)中是否有任何计划来支持 Java 监控代理的特殊要求? 通常,监控代理需要能够访问默认情况下原始 Java 应用程序不可用的类、包和模块。通过 -javaagent
我目前正在测试使用 jdk-9+149 将 Java 8 应用程序迁移到 Java 9/Jigsaw。 该项目采用标准 Maven 目录布局,即具有 src/main/java , src/test/
我从 w3c 网站下载 Jigsaw 服务器源,http://www.w3.org/Jigsaw/ .我按照它的指示 http://www.w3.org/Jigsaw/Doc/Programmer/c
除了 jigsaw 之外,还有其他 CSS 验证网站吗? ? 意思是 content: none; 不正确,但根据规范应该没问题。 最佳答案 我找到的最好的在线 css 验证器是 http://www
我有以下代码通过访问静态包作用域方法 URL.getURLStreamHandler() 检索在 Java 8 中工作的 http 和 https 默认 URLStreamHandlers: priv
我们有一个不使用 AWT/Swing/JavaFX 的 Java 应用程序,它可以与私有(private)捆绑的 JRE 8 一起正常工作。JRE 9 比 JRE 8 大得多,但我们想让用户使用 JR
我是一名优秀的程序员,十分优秀!