Java 9版本中的一个主要更改是Module System,它提供了可在可用内存较少的设备上运行的模块化JVM。JVM仅与应用程序所需的那些模块和API一起运行。
module Module-Name { requires moduleName; exports packageName; }
以下是模块系统的一些优点和缺点。
Java 9的主要变化是它现在是一个具有模块化JDK,模块化源代码和模块化运行时映像的模块系统。
内部API隐藏在模块中。
模块系统为可处理分布式数据处理的项目开发创造了更多机会。例如,新的Java 9已用于构建需要同时处理各种数据的IoT解决方案和平台。
Java中的模块现在还使方法在模块内部公开,并限制普通用户的访问。
在Java 9发布之后,不再支持Java的早期版本,并且客户端可能必须花费时间和资源进行迁移。
如果一个项目仍处于开发阶段,那就不会太困难。但是对于其他解决方案而言,迁移可能是一个严重的问题。
程序产品和库的相互依赖性问题尚未解决,因此很难安装新产品和卸载旧产品。