我在 Windows 7 64 位平台上运行 64 位 tomcat 6。我将我的 Web 应用程序(整个文件夹 - 它称为 cuba4remedy)复制到另一台机器上的 tomcat 6 64 位安装。这个运行 Windows 2008 标准 64 位。
servlet 在我的 Windows 7 开发机器上运行良好,但是当我在新机器上运行时,我在 Catalinaxxx.log 中看到这个错误:-
严重:空组件 Catalina:type=JspMonitor,name=jsp,WebModule=//localhost/myappnamehere,J2EEApplication=none,J2EEServer=none
我真的不明白为什么会出现此错误。有什么想法吗?
还有一点可能是相关的。我使用 Javac 1.7 版在我的开发机器上编译。在我复制到的机器上,只安装了 Java 运行时——即 Java 1.6 版。
编辑 对于面临此问题的其他任何人,似乎 Java 的开发版本必须与部署版本相同或更低。我将我的开发 java 版本降级为与目标运行时版本相同,然后这个错误就消失了。谁能证实这一点?
最佳答案
您可以使用 J7 编译并在 J7 上部署。只需使用参数 -target 1.6
当你为 JDK 1.6 编译时。否则(正如预期的那样)java 7 将针对 java 7 运行时进行编译。
关于java - 将在一台服务器上正常工作的 Tomcat 6 webapp 复制到另一台 Tomcat 6 服务器,得到 Null 组件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13433400/