Tomcat:在docBase中解压缩WAR与压缩WAR

时间:2014-06-03 08:03:16

标签: java tomcat war

Tomcat可以使用这两种类型 - 或直接使用 app.war 文件:

    <Host
      ...
      unpackWARs="false"
      autoDeploy="false"
      deployOnStartup="false">

      <Context
        path=""
        docBase="app.war"
      />

或 - 使用目录,从解压缩的WAR文件创建:

    <Host
      ...
      unpackWARs="true"
      autoDeploy="true"
      deployOnStartup="false">

      <Context
        path=""
        docBase="app"
      />

问题是 - 有什么区别?

据我了解:在启动期间 - Tomcat将目录 war-file 的内容加载到内存中 - 然后直接从RAM中使用它。所以 - 性能一定不能有任何差别。这是对的吗?有没有其他的deatils?

1 个答案:

答案 0 :(得分:2)

之前曾在this one等其他地方讨论过。

本质上

  • war文件无论如何都会解压缩,但是在工作目录中而不是在webapps中。
  • 在Windows上你可能遇到问题,文件被操作系统锁定而不能删除,尽管已知有解决方法。
  • 根路径不会相同,因此如果您的应用正在向文件系统写入内容,则可能会遇到问题。

HTH, 扬