1

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

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

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

4

3 回答 3

1

你的假设或假设或概念是错误的。

让我们举个例子。您正在创建一个新的 Web 应用程序项目

  1. 使用 maven:archetype 创建项目
  2. 将项目转换为 eclipse 兼容(任何 IDE 兼容)。这是通过执行一个命令来完成的,这会将所需的 jars 添加到类路径文件中,您可以像往常一样开发您的应用程序。
  3. 构建和部署
于 2013-09-24T15:49:41.190 回答
1

首先,对于任何 Java Maven 项目,您必须选择“使用依赖项构建”选项,尤其是在使用 NetBeans 时。使用 Eclipse,您可以选择“下载源代码”。完成后,将下载 Maven 依赖项(JAR 文件)。

另外,您说您的导入语句将在编译时解析。当您单击“使用依赖项构建”选项时完成此操作(右键单击 NetBeans 中的 Java 项目),因为这将下载所有依赖项并构建应用程序并解析使用 pom.xml 中找到的 JAR 库的任何导入.

于 2013-09-24T15:52:27.513 回答
1

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

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

于 2013-09-24T16:01:43.110 回答