当我们将 .class 文件或 servlet 上传到服务器时,网络服务器会重新启动。这在我们上传 JSP 时不会发生。有没有办法配置 Resin 以便在不重新启动 Web 服务器的情况下动态加载类?
问问题
1258 次
1 回答
2
据我所知,Resin 是唯一可以在类发生更改时重新加载类的 servlet 引擎。为此,您需要使用<compiling-loader>
配置自动编译的 WEB-INF/classes-style 类加载器。这个编译加载器会自动将 Java 代码编译成 .class 文件来加载它们。
下面,一个例子WEB-INF/web-resin.xml
:
<web-app xmlns="http://caucho.com/ns/resin">
<prologue>
<class-loader>
<compiling-loader path="WEB-INF/classes"
source="WEB-INF/src"/>
</class-loader>
</prologue>
</web-app>
我的理解是,Resin 将检查每个源文件,如果它们从 .class 时间/日期/大小更改为WEB-INF/classes
,则 Resin 从 JVM 卸载当前类,重新编译 .java 文件,然后重新加载该类。
于 2009-10-07T22:44:11.783 回答