﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-The program change my life-文章分类-Maven学习</title><link>http://www.blogjava.net/instruction-pointer/category/51698.html</link><description>To fight for open source</description><language>zh-cn</language><lastBuildDate>Wed, 16 May 2012 21:35:00 GMT</lastBuildDate><pubDate>Wed, 16 May 2012 21:35:00 GMT</pubDate><ttl>60</ttl><item><title>Maven学习(一)</title><link>http://www.blogjava.net/instruction-pointer/articles/377992.html</link><dc:creator>QiYun</dc:creator><author>QiYun</author><pubDate>Sat, 12 May 2012 06:22:00 GMT</pubDate><guid>http://www.blogjava.net/instruction-pointer/articles/377992.html</guid><wfw:comment>http://www.blogjava.net/instruction-pointer/comments/377992.html</wfw:comment><comments>http://www.blogjava.net/instruction-pointer/articles/377992.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/instruction-pointer/comments/commentRss/377992.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/instruction-pointer/services/trackbacks/377992.html</trackback:ping><description><![CDATA[<p>1.Maven的介绍<br />Maven的安装:<br />&nbsp;&nbsp;&nbsp; Maven的安装只要下载后，设置一下环境变量就OK了!<br />Maven的本地仓库设置:<br />&nbsp;&nbsp;&nbsp; &lt;localRepository&gt;D:/service/m2repositer&lt;/localRepository&gt;<br />pom.xml文件：<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;groupId&gt;com.abc&lt;/groupId&gt;------&gt; 项目的名称&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;artifactId&gt;hello&lt;/artifactId&gt;------&gt; 项目的模块的名称<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;version&gt;SNAPSHOT-0.0.1&lt;/version&gt;----&gt; 项目版本名称<br />junit为默认加入的依赖：<br />&nbsp; &lt;dependencies&gt;<br />&nbsp;&nbsp;&nbsp; &lt;dependency&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;groupId&gt;junit&lt;/groupId&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;artifactId&gt;junit&lt;/artifactId&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;version&gt;3.8.1&lt;/version&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;scope&gt;test&lt;/scope&gt;<br />&nbsp;&nbsp;&nbsp; &lt;/dependency&gt;<br />&nbsp; &lt;/dependencies&gt;<br />注：scope默认为compile<br />&nbsp;&nbsp;&nbsp; compile:&nbsp; 编译时依赖在所有阶段都可获得，这是默认值。 <br />&nbsp;&nbsp;&nbsp; provided: Provided依赖范围用来编译应用程序，但无需部署。若你用到jdk或者应用服务器提供的JAR，则使用此范围，servlet APIs就属于这个依赖范围。 <br />&nbsp;&nbsp;&nbsp; runtime: 运行依赖范围在编译阶段是不需要的，只有在运行时需要，比如JDBC驱动程序。 <br />&nbsp;&nbsp;&nbsp; test:&nbsp; 测试范围依赖，仅在编译和运行单元测试时需要（比如Junit）。 </p>
<p>依赖包的排除exclusion:<br />&lt;dependency&gt;<br />&nbsp;&nbsp;&nbsp; &lt;groupId&gt;mygroup&lt;/groupId&gt;<br />&nbsp;&nbsp;&nbsp; &lt;artifactId&gt;myartifact&lt;/artifactId&gt;<br />&nbsp;&nbsp;&nbsp; &lt;version&gt;1.0.0&lt;/version&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;exclusions&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;exclusion&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;groupId&gt;db.drivers&lt;/groupId&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;artifactId&gt;jdbc&lt;/artifactId&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/exclusion&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/exclusions&gt;&nbsp; <br />&lt;/dependency&gt; <br />代码的存放与包的建立规则：<br />&nbsp;&nbsp;&nbsp; 源代码应该放置到src/main/java中<br />&nbsp;&nbsp;&nbsp; 源代码的资源文件应该放置在src/main/resources文件夹中<br />&nbsp;&nbsp;&nbsp; 测试代码应该放置到src/test/java中<br />&nbsp;&nbsp;&nbsp; 测试代码的资源文件应该放置在src/test/resources文件夹中<br />Maven命令的运行:<br />&nbsp;&nbsp;&nbsp; mvn clean --&gt;运行清理操作（把target文件夹中的数据清理）<br />&nbsp;&nbsp;&nbsp; mvn clean compile--&gt;先运行清理之后运行编译，会见代码编译到target文件夹中<br />&nbsp;&nbsp;&nbsp; mvn clean test--&gt;清理和测试<br />&nbsp;&nbsp;&nbsp; mvn clean package--&gt;清理和打包<br />&nbsp;&nbsp;&nbsp; mvn clean install--&gt;清理和安装，将打好的包安装到本地仓库中，以供其他的项目可以调用<br />&nbsp;&nbsp;&nbsp; mvn clean deploy--&gt;清理和发布<br />2.Maven的依赖<br />&nbsp;&nbsp;&nbsp; Maven搜索依赖首先在本地仓库查询，如果本地仓库没有，就去中央仓库查询<br />&nbsp;Maven依赖传递性(基于compile范围传递):A--&gt;B,C--&gt;A==&gt;C--&gt;B<br />&nbsp;传递的冲突性：<br />&nbsp;&nbsp;&nbsp; 1)A中有a.1.0,B中有a.1.1&nbsp; A,B--&gt;C C中依赖的版本为a.1.0<br />&nbsp;&nbsp;&nbsp; 2)A中有a.1.0,B中有a.1.1&nbsp; A,B--&gt;C C,B--&gt;D&nbsp; D中依赖为路径最短的a.1.1<br />Maven的继承：<br />Maven在dependencyManagement元素中为你提供了一种方式来统一依赖版本号。你经常会在一个组织或者项目的最顶层的父POM中看到dependencyManagement元素。使用pom.xml中的dependencyManagement元素能让你在子项目中引用一个依赖而不用显式的列出版本号。<br />用dependencyManagement来管理可以防止模块继承不需要的依赖<br />3.Maven的仓库<br />私有仓库的安装与使用：<br />&nbsp;&nbsp;&nbsp; 1.下载并设置下环境变量<br />&nbsp;&nbsp;&nbsp; 2.nexus install将nexus安装到windows的服务中<br />&nbsp;&nbsp;&nbsp; 3.修改bin\jsw\conf\wrapper.conf文件中的wrapper.java.command="java命令所在的路径"</p>
<p>&nbsp;</p> <img src ="http://www.blogjava.net/instruction-pointer/aggbug/377992.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/instruction-pointer/" target="_blank">QiYun</a> 2012-05-12 14:22 <a href="http://www.blogjava.net/instruction-pointer/articles/377992.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>