mal*_*c4k 22 java servlets java-9
Java EE 7应用程序服务器,特别是Servlet 3.1容器应该允许我们部署包含Web应用程序的WAR文件.WAR文件本质上是一个带有部署描述符(web.xml)和其他几个元素的JAR .
另一方面,Java 9引入了模块化JAR文件的概念,即带有模块descriptor(module-info.class)的JAR,它根据项目Jigsaw制作模块.
那么,WAR文件是否也包含模块描述符并制作"模块化WAR文件"?
是否已有应用程序服务器能够接受"模块化WAR文件"的部署?
一般来说,Java 9模块化方面的servlet容器和WAR文件的未来是什么?
Tom*_*rar 14
目前,Java EE和java 9(jigsaw)模块之间没有链接.未来的Java EE版本可能会引入有关如何与jigsaw模块交互的规范定义行为.
此时,所有应用服务器在JDK9上运行时都以"类路径模式"运行,这实际上意味着它们不使用拼图.
在大多数情况下,向war部署引入module-info只会导致部署问题,因为JDK可能会尝试以与应用服务器的其他部分不同的方式加载它.或者它甚至无法发挥作用,因为大多数应用服务器都有用于加载jar和类的自定义逻辑.
今天的一些应用服务器已经实现了某种模块化,如OSGi(GlassFish,Liberty)或jboss-modules(Wildfly).但此时拼图仍然有一些限制,能够在其上运行这样的模块化系统.
简而言之,直到EE规范(可能是9+)被更新以描述EE部署应如何在启用jigsaw的运行时上运行,对于此类部署的行为方式没有"官方"方式.在此之前,每个应用服务器都可以为它实现一些自定义支持,但它不会是标准的.
| 归档时间: |
|
| 查看次数: |
2768 次 |
| 最近记录: |