java - 理解 Maven 依赖

标签 java maven

我是使用 Maven 构建项目的新手。我知道您在 POM 文件中声明了依赖项,概述了项目所需的 jar,以便在编译时将它们添加到构建中。

我的问题是,当我需要 jar 文件来开发应用程序时,它在开发过程中如何工作?我认为 Maven 的要点是您不必实际拥有 jar 文件,它会在构建时获取并投入 war 。但是如果我正在开发并且我需要一个 jar 文件(例如 Jersey),我仍然需要自己出去拿 jar 并将它放在 lib 目录中以便进行开发工作,对吧,这样我知道那个 .jar 中有哪些类/方法可供我使用?有人可以向我解释我错过了什么吗?

我引用 Jersey 类的导入语句是否会在编译时解析,因为现在由于 jar 当前不存在,它们带有红色下划线?

最佳答案

一旦您在 Maven pom 中指定了一个依赖项,那么 Maven 就会负责下载它。请记住,Maven 不会在意您的代码是否依赖于该 jar。 所以在你的ide中创建Maven项目[不是简单的java项目],在你的pom中添加你所有的依赖,当你保存pom时,所有的依赖都会被下载。 如果没有下载依赖项,那么您需要检查 maven settings.xml 文件,其中存储库 url 或凭据可能不正确。

还想要广告构建部分的详细信息。 Maven 有很多可用的插件,可以帮助您将所有依赖项打包到 war 文件 [assembly 插件] 或 rpm [maven rpm 插件] 中。这些插件会将您的所有依赖项与主 jar 一起包装到一个可部署文件中。

关于java - 理解 Maven 依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18986197/

相关文章:

java - 为什么下面代码的输出是1而不是0?

java - 如何使用 Maven 通过注释值搜索并运行 TestNG 测试方法?

java - 如何使用 Java 11 中的 cxf-xjc-plugin 生成的类?

java - 带有 minimizeJar 的 Maven Shade 插件

java - 如何以 root 用户身份运行 tomcat - 为什么 tomcat 通常在自己的用户下运行?

Java 命令行启动器

java - 如何安装 Xuggler?

java - 如何将maven项目部署为jar文件

java - 如何从 do while 循环内部检索变量值

java - 通过另一个类更改静态变量