在创建 Java Web 应用程序时,将代码放在 jar 中与在类文件夹中有什么好处吗?



在web应用程序中,可以在两个位置拥有代码:

  • WEB-INF/lib
  • WEB-INF/类

在lib文件夹中,必须将代码打包为jar文件,而在classes文件夹中,代码位于与包结构匹配的文件夹结构中。

将自己的代码作为jar放在WEB-INF/lib中与将其作为类放在WEB-INF/classes中有什么好处吗?

不,没有任何好处。甚至还有缺点:

  • 创建jar是构建中要做的另一项任务
  • 大多数(所有?)应用程序服务器将classes目录(或允许将其放置)放在webapp类路径中的jar之前。因此,将类和资源放置在那里可以确保它们的加载优先于位于WEB-INF/lib的jar中的类似类或资源

JAR的存在只是为了更容易地将整个应用程序从一个地方移动到另一个地方。

除非您想将代码移动/提供到某个地方,否则将自己的类粘贴到Jar中是非常糟糕的主意。否则保持原样(WEB-INF/classes)。这可以节省您的时间,而且是标准建议。

请记住,每次清理项目时,都会生成新的类文件。

最新更新