2012-02-06 63 views

回答

0

我建议阅读这本书:http://www.sonatype.com/books/mvnref-book/reference/。一般来说,Maven项目不应该有lib带有罐子的文件夹,因为在99%的情况下,可以从各种存储库检索必要的依赖关系。

+0

@AndrewLoginov谢谢你的回答。我现在正在读这本书 – AbdulAziz 2012-02-06 08:28:06

1

您不需要手动添加任何外部库。您需要将这些lib作为maven中的依赖项添加,之后,maven将为您处理该库。

例如,如果你需要slf4j外部库(JAR)添加到您的项目作为一个依赖,添加以下maven的pom.xml文件。

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>com.springsource.slf4j.api</artifactId> 
    <version>1.5.6</version> 
</dependency> 

如果你有一个私人图书馆这不是在任何公共的资源,那么你需要的是JAR文件安装到你的本地仓库。

+1

谢谢你的例子。它帮助我更清楚地理解maven。 – AbdulAziz 2012-02-06 08:38:12

2

传统上,如果您的项目需要使用一些开源工具和框架,您必须从这些工具的官方网站手动下载它们。如果您只想使用库A,但这个库A依赖于其他库B的代码,则必须同时下载库A和B.这非常麻烦,因为您不仅需要下载要使用的库,还可以下载这些库依赖的其他库。

Maven依赖项特性的要点是它解决了这样的问题。您只需要在配置文件(pom.xml)中定义您想要在项目中使用的库,然后Maven将帮助您自动下载这些库并检索这些库需要从公共Maven存储库或您在pom.xml中定义的存储库。

但是,出于商业和版权的原因,并非所有常用的库都可以在Maven公共仓库中找到。其中一个示例是Oracle JDBC Driver。对于这种情况,您必须手动下载库并导入它作为项目使用的外部库。您还可以将其导入到本地Maven存储库。

+0

谢谢你的亲切帮助 – AbdulAziz 2012-02-06 08:37:24