您能否解释一下在 lib 文件夹中添加 jar 和将 jar 添加到类路径中的区别。
两者都只是添加 jar 的一种方法(任何人都可以)或者有什么区别吗? 我尝试搜索但找不到任何答案。
最佳答案
如果您有一个捆绑为 WAR 的 Web 应用程序项目,那么将 jar 文件添加到 WEB-INF/lib 中,当部署在 servlet 容器(Jetty、Tomcat)中时,将自动将所有这些 jar 文件放入应用程序的类路径中)或应用程序服务器(GlassFish、Wildfly)中。请注意,这些库仅适用于正在部署的单个应用程序,不适用于此服务器中部署的任何其他应用程序。
如果您有一个简单的 jar,其中包含 lib 文件夹,那么将任何 jar 添加到该文件夹中都不会执行任何操作。对于必须自己执行的 jar 文件,您需要在类路径中指定要使用的库,否则您的 jar 将无法运行。对于这种情况,最好将库放在 jar 外部的 lib 文件夹中,这样您就可以在 MANIFEST 文件中引用它们。另一方面,您可以使用maven生成fat jar .
关于java - 在 lib 文件夹中添加 jar 文件和在类路径中设置它之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30548249/