1

有谁知道如何更新 WebLogic Server 的 WLS_HOME/server/lib/ 文件夹的内容而无需重新启动它?

我的一位同事进行了一个部署,其中涉及一个更新的 .jar 文件,该文件被 user_projects 目录中的所有 .ears 使用,因此他决定将其放在 WLS_HOME/server/lib 中。虽然他部署到 user_projects 的 Web 应用程序部署正常,但我们在服务器日志中注意到,对于我们知道在更新的 .jar 中的类,它重复出现 NoClassDefFound 异常 - 并且直到重新启动后它才拾取新类。

理想情况下,我需要能够将新的共享库部署到此 /lib 文件夹,而无需重新启动服务器,因为这涉及中断。

有谁知道如何做到这一点?

4

1 回答 1

2

这是不可能的。如果您需要更大的灵活性,您应该转向共享 Java EE 库。对于您当前的情况,如果您有集群环境,您唯一能做的就是滚动重启实例以避免停机。

了解 WebLogic Server 应用程序类加载

WebLogic Server 包含一个 lib 子目录,位于域目录中,您可以在服务器启动时使用该子目录将一个或多个 JAR 文件添加到 WebLogic Server 系统类路径。lib 子目录适用于不经常更改的 JAR 文件,这些文件是部署在服务器中的所有或大多数应用程序或 WebLogic Server 本身所需要的。例如,您可以使用 lib 目录来存储域中所有部署所需的第三方实用程序类。您还可以使用它为 WebLogic Server 应用补丁。

不建议将 lib 目录作为在域中部署的一个或两个应用程序之间共享 JAR 或共享需要定期更新的 JAR 的通用方法。如果更新 lib 目录中的 JAR,则必须重新启动域中的所有服务器才能使应用程序实现更改。如果您需要在多个应用程序之间共享 JAR 文件或 Java EE 模块,请使用创建共享 Java EE 库和可选包中描述的 Java EE 库功能。

于 2011-07-26T12:55:41.260 回答