当前位置: 首页 > 知识库问答 >
问题:

在lib文件夹中添加jars文件和在类路径中设置jars文件之间的区别

贲凌
2023-03-14

请解释一下在lib文件夹中添加jars和在classpath中添加jar的区别。

两者都只是添加jars的一种方式(任何人都可以工作)还是有什么区别?我尝试搜索,但找不到任何答案。

共有2个答案

扈高逸
2023-03-14

如果您使用任何第三方jar文件,那么您需要将它添加到类路径中,因为您的java应用程序试图找出您在应用程序中使用的类。在类路径中添加jar意味着在执行时在类路径中显式地添加jar文件。在lib文件夹中添加jar将在eclipse中完成,eclipse将在执行时在类路径中内部添加jar文件。

要验证这两点,请执行以下命令

ps -eaf | grep -i java

这将在类路径中显示具有依赖项(jar文件)的应用程序。

丘华翰
2023-03-14

如果您有一个捆绑到WAR中的web应用程序项目,那么在部署到servlet容器(Jetty、Tomcat)或应用服务器(GlassFish、Wildfly)时,将jar文件添加到WEB-INF/lib会自动将所有这些jar放入应用程序的类路径中。请注意,这些库仅可用于您正在部署的单个应用程序,不可用于此服务器中部署的任何其他应用程序。

如果您有一个简单的jar,其中有一个lib文件夹,那么将任何jar添加到此文件夹中都不会有任何作用。对于必须自己执行的jar文件,您需要指定要在类路径中使用的库,否则您的jar将无法运行。对于这种情况,最好将库放在jar之外的lib过滤器中,这样可以在MANIFEST文件中引用它们。另一方面,您可以使用maven生成胖罐子。

 类似资料:
  • 问题内容: 从命令行,如何设置Java CLASSPATH选项以指向包含多个jar文件的一个或多个目录?是否有通配符支持递归目录和子目录? (我的JAR文件在几个子目录中排序。) 问题答案: 如果您使用的是Java 6或更高版本,则可以使用以下形式的通配符: 如果要添加所有子目录:lib \ a \,lib \ b \,lib \ c \,则除了以下以外,没有其他机制: 您想要完成的工作没有类似或

  • 本文向大家介绍文件和文件夹之间的区别,包括了文件和文件夹之间的区别的使用技巧和注意事项,需要的朋友参考一下 文件 文件可以描述为一组相关的数据/信息,并存储在辅助存储设备上。文件可以是数据/信息文件或程序文件,并且可以包含任何格式的数据。例如,文本文件,音频文件,可执行程序文件等。 文件夹 文件夹是用来存放文件的容器。文件夹也可以具有子文件夹。 以下是文件和文件夹之间的重要区别。 序号 键 文件

  • 问题内容: 我有Jetty jetty-9.2.3.v20140905 我的理解是lib / jar或lib / ext中的jar会自动放在类路径中,但这可能是码头8的旧行为。 我正在尝试使用websockets部署一个webapp。有了我在webapps目录中部署的WAR文件,jetty一直抱怨说,它无法在jetty / lib目录(jetty-http,jetty-io,jetty-secur

  • 问题内容: 我正在使用Eclipse,我需要能够将Java库(JAR文件)添加到Web应用程序的文件夹中。我该如何实现? 问题答案: 将jar文件添加到您的WEB-INF / lib文件夹中。 在Eclipse中右键单击您的项目,然后转到“构建路径>配置构建路径” 添加“ Web应用程序库”库 这将确保所有WEB-INF / lib jar都包含在类路径中。

  • null 但结构似乎必须如下: 引导-INF 类 lib lib文件夹,其中包含依赖项,因为现在启动后我得到错误:

  • 问题内容: 在开发Java项目时,我将所有jar文件都放在一个在项目内部创建的文件夹中,称为Now,是否可以将文件夹添加到Java类路径中,而不必添加每个jar文件? 我在考虑变量或创建用户库的思路。 问题答案: 根据您所说的,我可能会创建一个包含您的库JAR的用户库。 您可以使用Window => Preferences创建一个用户库,向下钻取到Java => Build Path => Use