我正在尝试减少部署在 glassfish 3.1.1 (build 12) 应用程序服务器中的 Web 应用程序的启动时间。我的 Web 应用程序部署为包含应用程序中每个模块的多个 jar 文件的 war 文件。jar 文件位于 WEB-INF\lib 目录中。
在为 glassfish 启用详细日志时,我看到 glassfish 尝试搜索 WEB-INF\classes 中的类文件但没有找到。由于有超过 16K 的类,因此每个类文件都有一条错误消息。
|FINE |org.apache.naming_.FileDirContext| 88|PWC4451: File cannot be read E:\glassfish3.1.1\glassfish\domains\domain1\applications\mywebapp\WEB-INF\classes\com.xxx.yyy.MyClass.class
我在 WEB-INF\lib 中添加了一个名为 all-jars.jar 的 emtpy jar,它包含一个带有类路径属性的 MANIFEST.MF 文件。Class-Path 属性如下所示。
Class-Path: WEB-INF/lib/a.jar WEB-INF/lib/b.jar WEB-INF/lib/c.jar
添加这个罐子并没有帮助。
如何告诉 glassfish 不要在 WEB-INF/classes 目录中搜索?还有其他减少启动时间的建议吗?