Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在哪里放置像HTMLPasser这样的java包?_Java_Html Parser - Fatal编程技术网

在哪里放置像HTMLPasser这样的java包?

在哪里放置像HTMLPasser这样的java包?,java,html-parser,Java,Html Parser,我开始使用像HTMLParser这样的java包,我下载了它,发现里面有很多文件和目录 我想,把它们放在我的linux系统的什么地方?有约定还是标准?Java包有两种形式源代码——您提到的所有文件和目录——并打包为JAR。Java项目中的一个常见约定是,项目有一个lib目录,其中包含项目所依赖的所有JAR。这些项目通常使用shell脚本,在执行项目代码之前将所有jar添加到Java类路径 然而,许多项目正从这种处理依赖关系的方法转向使用一种构建工具,如自动处理依赖关系管理的工具。其他选择包括或。

我开始使用像HTMLParser这样的java包,我下载了它,发现里面有很多文件和目录


我想,把它们放在我的linux系统的什么地方?有约定还是标准?

Java包有两种形式源代码——您提到的所有文件和目录——并打包为JAR。Java项目中的一个常见约定是,项目有一个lib目录,其中包含项目所依赖的所有JAR。这些项目通常使用shell脚本,在执行项目代码之前将所有jar添加到Java类路径

然而,许多项目正从这种处理依赖关系的方法转向使用一种构建工具,如自动处理依赖关系管理的工具。其他选择包括或。有关介绍,请参阅或

在这里,您编写了一个pom.xml(项目对象模型文件),用于指定项目使用的库(jar)。Maven然后将不同项目的所有JAR存储在本地目录的.m2目录中,跟踪从何处获得它们以及它们的版本信息

这使得开发更加容易,因为您不需要创建lib目录或手动管理依赖项。您还可以避免设置类路径的许多复杂性,因为Maven会在编译和测试等常见生命周期阶段自动为您执行这些操作。Eclipse的最新版本可以读取Maven pom并从中自动配置类路径

构建项目后,Maven还可以通过assembly插件或Shade插件帮助创建包含项目所依赖的所有JAR的“胖JAR”。这使得当您需要他人使用时,分发代码变得更容易。如果您正在分发jar,那么pom.xml将描述项目的依赖关系,从而避免分发它所依赖的jar


要在Linux系统上布局文件,请参阅。

快速而肮脏的答案是“类路径上的任意位置”,其中类路径设置为客户端计算机上的系统属性(不推荐),或者设置为用于启动JVM的CLI会话的临时系统属性(可从启动脚本使用),或者作为JVM的命令行参数(通常是首选)。
第一个和第二个设置CLASSPATH环境变量,请参阅JDK或JRE文档以了解确切的语法以及操作系统和/或shell脚本文档。第三,在Java运行时和编译器中使用-cp命令行变量,有关确切语法,请参阅其文档。

将文件放在文件系统的何处?出于开发目的,我通常在我的计算机上使用一个包含所有此类库的中心文件夹,并从IDE或其他开发环境链接到该文件夹。对于最终用户的部署/打包,传统做法是在产品文件夹中有一个包含所有可分发内容的“lib”子文件夹,并将jar文件放在其中。

你是说第三方库?jsoup!取决于您打算如何使用它,如果您开发的应用程序应该是可移植的,您应该将其放置在应用程序文件夹中,还取决于您是否希望此库在用户之间共享。如果我希望在不同用户之间共享该库,我应该怎么做?我的假设是您正在构建桌面应用程序。好吧,这取决于你的目标平台-win/lin/mac,基本上如果你想在用户之间共享东西,你可能需要一些本机软件包,或者可能需要一些安装解决方案,比如:只是想知道;如果将这些HTML解析器库打包到应用程序中,会出现什么问题。我的意思是,把它们放在应用程序所在的同一个目录中。这样做会有什么问题吗???这并不能回答问题,它只是提供了一个隐藏真正问题的解决方法(一个不错的解决方法,但他应该了解系统,最终能够在没有工具的情况下使用它)。