0

我是 Maven 新手,使用 Eclipse 的m2e插件。我仍然在 Maven 周围徘徊,但似乎每当我需要导入一个新库时,例如java.util.List,现在我必须手动完成为 jar 找到正确存储库并将其添加到依赖项中的麻烦聚甲醛。这似乎是个大麻烦,特别是因为在公共存储库中找不到某些 jar,因此必须将它们上传到本地存储库。

我是否在 Eclipse 中遗漏了一些关于 Maven 的内容?当 Eclipse 自动导入新库时,有没有办法自动更新 POM?

我试图了解使用 Maven 如何节省时间/精力......

4

2 回答 2

3

你选了一个坏例子。无论 Maven 配置如何,Java 标准运行时附带的实际 Java 库的一部分都在那里。

考虑到这一点,如果你想添加一些外部的东西,比如 Log4j,那么你需要添加一个对 Log4j 的项目依赖。然后,Maven 将获取依赖信息并创建一个“签名”以进行搜索,首先在本地缓存中,然后在外部存储库中。

这样的签名可能看起来像

groupId:artifactId:version

也许

groupId:artifactId:version:classifier

这标识了一个 Maven“模块”,然后将其下载并配置到您的系统中。一旦到位,它将模块中的所有类添加到您配置的项目中。

于 2012-05-08T22:19:07.160 回答
0

Maven 主要节省了在构建中下载和组织 JAR 文件的时间。通过定义“标准”项目布局和“标准”构建顺序,Maven 消除了“为什么我的项目不构建”抽奖活动中的大量猜测。此外,您可以使用简洁的命令(例如“mvn dependency:tree”)以递归方式打印出您的项目所依赖的所有 JAR 的列表。

警告说明:如果您使用的是 M2E 插件和 Eclipse,您也可能会遇到插件本身的问题。1.0 版本(在 eclipse.org 上托管)远不如之前的 0.12 版本(在 Sonatype 上托管)友好。您可以通过从 apache (maven.apache.org) 下载和安装 Maven 的“独立”版本并从命令行运行 Maven 在一定程度上解决这个问题。这实际上比尝试在 Eclipse 中运行 Maven 稳定得多(根据我的个人经验),并且可以在您尝试了解 Maven 时为您省去一些痛苦。

于 2012-05-08T22:30:02.317 回答