java - 为什么 webapps 更喜欢/WEB-INF/lib 而不是/META-INF/MANIFEST.MF?

标签 java web-applications tomcat dependencies manifest

我想知道为什么 Java webapps 规范强加了一个特定的依赖目录:/WEB-INF/lib

的确,为什么不用经典的/META-INF/MANIFEST.MF文件呢?

有人会说 web 应用程序更安全,因为 libs 物理上集成在 WAR 文件中。

但是,如果我们这么认为,我们可能会想:

为什么对于一个简单的 Java 应用程序(简单的 JAR),没有专门的依赖目录?它也可能更安全,因为 list 文件中没有错误类路径(例如修改不当)的风险。

其他人会说 webapp 被设计成可移植的,所以 /WEB-INF/lib 的好处是不用担心链接依赖性。

我很想知道您对这个问题的看法。

最佳答案

jar 是一个标准库。对于普通的实用程序 jar ,最好将它们分开。如果一个库依赖于另一个库,而您更需要该依赖库,那么您将浪费空间、内存,并且可能因库版本不同而出现问题。

然而,Web 应用程序是一个应用程序包。您必须确保一切正常,以便添加所需的库。

关于java - 为什么 webapps 更喜欢/WEB-INF/lib 而不是/META-INF/MANIFEST.MF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8174064/

相关文章:

java - Vector 同步和 Vector 如何通过将数组大小加倍来增加其大小

java - 无法使用 Gradle 编译 Java 库,可以使用 IDE

javascript - 具有多个端点的 Node.js 应用程序

java - servlet - 许多上下文 - 如何共享数据库连接?

java - 使用 servlet 时的 Tomcat 404

java - 使用标志 CLEAR_TOP 时后台堆栈中的 Activity

java - Spring 批处理错误未显示在我的网页上

java - 部署War时Tomcat 6错误

git - Jenkins 尝试从 tomcat root 构建,而不是 JENKINS_HOME

java - 如何创建随机怪物