【问题标题】:One JVM per application WAR in Jetty?Jetty 中每个应用程序 WAR 一个 JVM?
【发布时间】:2013-04-02 20:33:40
【问题描述】:

我正在使用 Jetty 8 来运行一些 servlet。我有两个(或更多)应用程序共享源代码,我想在同一个端口(即 8080)上运行它们。我在 Jetty 中放置了两个不同的 WAR 文件,one.wartwo.war,这样我就可以访问它们,例如,

  • http://localhost:8080/one
  • http://localhost:8080/two

两个 WARS 都包含一个相同的公共 JAR 文件(common utils)。每个 WAR 应用程序是否都有自己的 JVM?真的,我只是想确保公共 JAR 类是完全独立的,因为有些类是静态的,我需要两个应用程序显然不能共享对同一个静态类的访问。

这似乎很明显,而且我似乎证实了这种情况是,公共类是通过一个简单的测试场景为每个 WAR 单独加载的(两个相同的 WAR 托管在同一个 Jetty 实例中,但路径不同......往上看)。但我缺乏书面文件或确认是这种情况。

【问题讨论】:

    标签: servlets jetty war


    【解决方案1】:

    每个 WAR 文件都有自己的类加载器,请参阅 http://docs.codehaus.org/display/JETTY/Classloading。所以你可以安全地使用静态类。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多