玫瑰巷的乞者的gravatar头像
玫瑰巷的乞者 2017-03-16 11:51:24
最近在学习Maven,做点笔记心得

一、maven安装


1.Android Maven Plugin 参考网站

http://code.google.com/p/maven-android-plugin/

2.下载maven  http://maven.apache.org/ 下载最新的Maven

3.解压放到你想放的位置(例如:D:/Maven 目录)

4.配置环境变量 MAVEN_HOME=D:\Maven  把MAVEN_HOME加入到PATH中 %MAVEN_HOME%\bin

5.在D:\Maven\conf下面找到settings.xml 配置maven的仓库(当然可以默认)


<localRepository>D:/Maven/repositories</localRepository>

 

6.在cmd中输入 mvn -version 查看是否配置成功,如果显示maven版本信息和javaJDK相关信息表示配置成功

 

二、maven的pom.xml中添加本地jar包 

 

原则上Maven的设计是不需要这么做的,因为pom.xml中依赖的jar包会自动实现从中央仓库下载到本地仓库。

但也有特殊情况。

首先


<localRepository>D:\meven\apache-maven-3.2.5-bin\MavenRepository\maven_jar</localRepository>


这个配置是maven本地库的位置


比如我下载了

lucene-queryparser-4.6.1.jar


1)、怎么添加jar到本地仓库呢?


 步骤:


1.cmd命令进入该jar包所在路径


2.执行命令:


mvn install:install-file -Dfile=lucene-queryparser-4.6.1.jar -DgroupId=org.apache.lucene -DartifactId=lucene-queryparser -Dversion=4.6.1 -Dpackaging=jar


其中:-DgroupId和-DartifactId的作用是指定了这个jar包在repository的安装路径,只是用来告诉项目去这个路径下寻找这个名称的jar包。


比如:
mvn install:install-file -Dfile=hadoop-hdfs-2.2.0.jar -DgroupId=org.apache.hadoop -DartifactId=hadoop-hdfs -Dversion=2.2.0 -D -Dpackaging=jar


就是指把hadoop-hdfs-2.2.0.jar安装到repository\org.apache.hadoop\hadoop-hdfs\2.2.0目录下,执行完命令

后,如果需要在项目中使用这个jar,则在pom.xml中添加如下配置即可:


<dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-hdfs</artifactId>
       <version>2.2.0</version>
 </dependency>

注意在每个参数前有个-D

 


2)、怎么在pom.xml中添加项目中libs下的jar呢,而不是从本地仓库中添加?

1、首先将要添加的jar包复制到项目中的libs文件夹下

2、然后在pom.xml中添加如下代码:


<dependency> 
    <groupId>htmlunit</groupId> 
   <artifactId>htmlunit</artifactId> 
   <version>2.21-OSGi</version> 
   <scope>system</scope> 
    <systemPath>${project.basedir}/libs/htmlunit-2.21-OSGi.jar</systemPath> 
</dependency> 

 

注意scope元素和systemPath元素,其中systemPath元素指定的就是jar包在项目中的路径。

注意libs文件夹下的这个jar包不需要Add to Build Path


下面是maven中央仓库的地址:

http://mvnrepository.com/artifact/net.sourceforge.htmlunit/htmlunit/2.21

可以在这里搜索想要的jar包,然后复制对应的依赖代码到你项目中的pom.xml中,则对应的jar包将下载到你本地的

maven仓库中,以提供给你使用。

 

 三、maven web项目部署Tomcat

 

有两种方法:


1.将项目打成war包,复制到${tomcat.home}\webapps目录下.当tomcat启动时会自动将其解包.

怎么打成war包?还是简单说下,点击项目“Run as”--->“Maven install”,点击完看控制台,直至控制台记载

到“BUILD SUCCESS”字样,打包成功,可以去项目target文件下找到打好的war包,接下来把war包复制到

Tomcat安装路径webapp下。

有人说,不能直接将war文件夹直接复制到${tomcat.home}\webapps目录下.

但是我试过之后,可以。

当然,将war包解压,解压出的文件夹要和war文件同名(后面可没有 .war),然后将文件夹放到webapps下面就

可以了。

网上很多胡扯的多余步骤答案,勿信!

设置完毕后,便可以基于Tomcat服务器来访问web项目了。

首先运行Tomcat的bin目录下的startup.bat,当Tomcat启动完毕后,

在浏览器输入:localhost:8080/projectName/login.jsp时,如果出现该Web项目的login界面时,则表明war包已成功地部署到tomcat服务器上,并可成功访问了。

2.修改${tomcat.home}\conf\server.xml文件.在Host节点下增加如下参考代码:

<Context docBase="D:\pafalearning\userapp\dist\tomcat\userapp.war" path="/userapp" reloadable="true"/> 

这个我没试过,大家可以试试。

 

四、maven jar包怎么下载

 

pom.xml文件配置到jar包,但是加载的时候,总是提示连接超时,是因为国内的网络问题,连不上官方的maven库。

解决办法:

在maven安装路径下找到conf目录下的settings.xml文件,这个文件配置了很多东西。上面说了本地仓库路径就是在这配置的。

下面就镜像配置,目前好用的就是ali的了。在<mirrors></mirrors>配置里面加上下面这段:
 <mirror>

        <id>alimaven</id>

        <name>aliyun maven</name>

        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>

        <mirrorOf>central</mirrorOf>

    </mirror>

    这样重新加载pom.xml就不会出现连接超时的错误了。

maven目前了解的还是很少,各位如果感觉我的很初级也是很正常,但是我在学习的道路上还是有很多问题,还有很多不知道的,希望各位也可以教教我。

总的来说,学习的过程是艰难的但同时也是愉快的。加油,共勉!

分享到:

最近浏览
whh10010 8小时前
暂无贡献等级
loginzdm 昨天
最代码贡献等级说明
wuweinan1 昨天
暂无贡献等级
SingleM 昨天
暂无贡献等级
aaaa123 前天
暂无贡献等级
Lzf127105 前天
最代码贡献等级说明
微微上翘 前天
最代码贡献等级说明
hanjianghua 前天
暂无贡献等级
lcjz99 前天
最代码贡献等级说明
小熊shx 前天
暂无贡献等级
a932278490 3月21日
最代码贡献等级说明
CodePlayer 3月21日
暂无贡献等级
Allen梅川酷子 LV1 3月21日
最代码贡献等级说明
relinux 3月20日
最代码贡献等级说明
chenzp 3月20日
暂无贡献等级
lvcai88 3月20日
最代码贡献等级说明
附耳聆听 3月20日
最代码贡献等级说明
lvhaowen 3月20日
最代码贡献等级说明
wyglpjljm 3月20日
暂无贡献等级
ahviplc 3月19日
最代码贡献等级说明
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友