maven dependency设置,jar包详情,安装本地jar包

用了Maven,所需的JAR包就不能再像往常同样,本身找到并下载下来,用IDE导进去就完事了,Maven用了一个项目依赖 (Dependency)的概念,用俗话说,就是个人项目须要用你这个jar包,就称之为个人项目依赖你这个包,换句话说,你这个JAR包就是我这个项目 的Dependency。java

      因而不少人在刚用Maven的时候,就会在加Dependency时栽跟头,明明我手头上就有须要的JAR嘛,它偏不让我用,什么道理,跟着就是生闷气, 少点耐性的,就会说Maven怎么怎么不爽,其实,若是你理解了Maven的一些机制,一些配置及管理的流程,就会以为它其实很爽。spring

      我暂且不谈Maven的长篇概念(其实我也还不少不少不懂),我先给你们介绍一个简单的查找方法,让你很快地找到所需的Dependency,并配置到你的pom.xml里面去。缓存

最快捷方法:服务器

GOOGLE搜索:maven 你需的jar包名称 repositorydom

好比我要作EJB,我要找jboss-j2ee.jar的Dependencymaven

就在GOOGLE里输入ui

maven jboss-j2ee repositorygoogle

在结果的第一条,进去你就能够在页面里找到下面这段hibernate

<dependency>
    <groupId>jboss</groupId>
    <artifactId>jboss-j2ee</artifactId>
    <version>4.0.2</version>
</dependency>

你把上面这段代码贴到你的Maven项目的pom适当的位置去,而后运行maven,Maven就会自动下载所需的jar及相关的pom信息,你不用管它,Maven会帮你下载,并放到适当的位置。插件

我再举几个查找实例,让你们熟悉一下怎么搜索

下面我要找 struts.jar

在GOOGLE里输入

maven struts repository

就很快能够找到下面这段代码

<dependency>
    <groupId>struts</groupId>
    <artifactId>struts</artifactId>
    <version>1.2.9</version>
</dependency>

我还要找hibernate

在GOOGLE输入

maven hibernate repository

在结果的第一条记录出现了不少个不一样的hibernate连接(由于有很项目用了hibernate嘛)咱们就选用org.hibernate的,看起来专业点嘛,呵呵

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate</artifactId>
    <version>3.2.6.ga</version>
</dependency>

好了,SSH可不能少了中间那个S,Spring嘛

在GOOGLE里输入

maven spring repository

在第一个结果进去,咱们此次选择org.springframework的,

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring</artifactId>
    <version>2.5.5</version>
</dependency>

      其它的我就不一一举例了,你们本身试试,其实这个方法能够解决大多数经常使用包的Dependency查找,不用专门记那些repository下载站的网址 嘛,不过始终这是非正规作法,其它要想更好地找到想要的Dependency,仍是得了解maven repository是啥玩意,它的local repository库概念,以及怎样创建本身本身repository服务器(这个我还不太熟,这里就不讲了,你们本身去其它地方找相关资料,省得被我 误导了)

      Maven的repository,说白了就是dependency的仓库,它按照必定的规则将dependency存放起来,以做缓存,若是本机的 repository找不到某个dependency,它就会自动去找到网上其它相关联的repository,找到的话将其下载至本地,那么下次它就不 再去其它地方下载了,直接从本地获取。

本地的repository在哪可找到?

默认repository地址:当前用户的私人目录 + .m2

若是你设置了Maven目录下的conf/setting.xml的local repository属性,则再也不是默认的repository地址,而使用你指定的地址。

找到下面这段,将它复制一份,放到注释外面,改为你本身的repository路径便可

<localRepository>c:/mvn repository/</localRepository>

Maven按什么规则去存放Dependency?

下面咱们来拿hibernate来做例子,以介绍在Maven运行并下载到所需的Dependency后怎么缓存到本地的repository

下面这个是hibernate的Dependency配置

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate</artifactId>
    <version>3.2.6.ga</version>
</dependency>

它被下载后将会被存放至

%repository%/org/hibernate/hibernate/3.2.6.ga/hibernate-3.2.6.ga.jar

其中%repository%就是你本地的repository目录!

不知你们看出来了没有,它是按你的Dependency的groupid + artifactid + version,而后以点号做分隔,来创建文件夹的,最后创建的文件夹以下

|--org

    |--hibernate

        |--hibernate

            |--3.2.6.ga

                |--hibernate-3.2.6.ga.jar

可能会有些人会问那个jar包的名字是怎么来的,细心的人或许早己观察出来了,没错,就是artifactId + "-" + version + ".jar"。

好了,下面咱们按这个规则去找一下另一个Dependency放在哪吧

<dependency>
    <groupId>com.google.gwt</groupId>
    <artifactId>gwt-servlet</artifactId>
    <version>1.4.61</version>
</dependency>

咱们如今根据以前所讲的规则,先进入你的本地repository目录,而后进入com目录,再进入google目录,再进入gwt目录,再进入 gwt-servlet目录,再进入1.4.61目录,跟着你就能够发现一个名叫gwt-servlet-1.4.61.jar和其它一些文件了你们试试 看吧!《注意:你在首次使用这个Dependency时,必定要运行Maven,让它去下载到须要的包,下载成功后你才能按上面的步骤找到,否则你找不到 别乱骂我,你都没下载的话,确定找不到了:(       》

      在你掌握这个技巧以后,有不少时候你能够根据所需包的package路径,本身摸它的Dependency,这个就不详谈了,总之你了解后,找Dependency不会成问题的,很是简单的事

      这个时候,就有另外一些用户会提出疑问,我要用的jar包是我本身开发的,或是朋友,或是网友传来的,在网上根据找不到,怎么在Maven里面使用它们呢? 其实办法是确定有的,并且也不难,也是经常要用到的,下面我来简单介绍一下几个方法:

前提,确定是你先写到pom里面去,组织随你写,artifact 写你的jar名,或者随便写,version你也写上你想要的,如

<dependency>
    <groupId>com.mydomain.ooooo</groupId>
    <artifactId>my-jar</artifactId>
    <version>100.1.1</version>
</dependency>

1、用好你的IDE!

      如今你们用的IDE,无非就是Eclipse,或者netbeans,或是JBuilder,据我所知,如今大部份人都向前二者转移,这些IDE都提供了 对Maven的支持,不过一般都须要你装插件才能打开并使用Maven的项目,怎么装maven插件我就不介绍了,你们本身上网找找别人写的文章吧。在你 装好插件后,一般会有一个libraies目录,里面列出你项目要用到的jar包,你右键点击本地尚未添加进去的jar包,选择本地安装 (Manually install artifact),选中你那个特殊的jar包,而后IDE会自动调用maven插件完成整个安装配置过程,下次你就再也不这样子作了,由于你本地 repository己经有了。

2、手动将jar包放到本地repository里面去

根据先前介绍的maven repository存放规则,本身建好目录,改好jar的文件名,本身拷进去,如

进到你本地的repository目录

建一个com文件夹,点进去

再建一个mydomain文件夹,点进去

再建一个ooooo文件夹,点进去

再建一个my-jar文件夹,点进去

再建一个100.1.1文件夹,点进去

再把你的jar包,更名为my-jar-100.1.1.jar,放到100.1.1文件夹里面去,

       而后运行你的maven项目,看看它会不会build成功,事实上若是你以前作的文件夹没错,大小写没问题,或没其它小失误,你的项目就能够正经常使用到你本身的jar包了

3、直接到http://repo1.maven.org/maven2/ 查找

相关文章
相关标签/搜索