扶平 發表於 2020-7-17 10:28:24

详解Maven命令大全

<p><span style="color: #ff0000"><strong>一、Maven简介</strong></span></p>
<p>Maven 官网:https://maven.apache.org<br />
Maven 3.3.9版本文档:http://maven.apache.org/ref/3...<br />
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。</p>
<ol>
<li>版本:maven有自己的版本定义和规则</li>
<li>构建:可以完成编译,打包,部署等。</li>
<li>依赖管理:方便引入所需依赖 Jar 包,不需手动下载</li>
<li>文档生成:maven的site命令支持各种文档信息的发布,包括构建过程的各种输出,javadoc,产品文档等。</li>
<li>项目关系:一个大型的项目通常有几个小项目或者模块组成,用maven可以很方便地管理</li>
</ol>
<p><strong>1. mvn help:describe</strong></p>
<p>你是否因为记不清某个插件有哪些goal而痛苦过,你是否因为想不起某个goal有哪些参数而苦恼,那就试试这个命令吧,它会告诉你一切的.</p>
<p>参数: 1. -Dplugin=pluginName&nbsp;&nbsp; 2. -Dgoal(或-Dmojo)=goalName:与-Dplugin一起使用,它会列出某个插件的goal信息,</p>
<p>如果嫌不够详细,同样可以加-Ddetail.(注:一个插件goal也被认为是一个 “Mojo”)</p>
<p>&nbsp;下面大家就运行<code>mvn help:describe -Dplugin=help -Dmojo=describe</code>感受一下吧!</p>
<p><strong>2. mvn archetype:generate</strong></p>
<p>你是怎么创建你的maven项目的&#63;是不是像这样:mvn archetype:create -DarchetypeArtifactId=maven-archetype-quickstart -DgroupId=com.ryanote -Dartifact=common,</p>
<p>如果你还再用的话,那你就out了,现代人都用mvn archetype:generate了,它将创建项目这件枯燥的事更加人性化,你再也不需要记那么多的archetypeArtifactId,你只需输入archetype:generate,剩下的就是做”选择题”了.</p>
<p><strong>3. mvn tomcat:run</strong></p>
<p>用了maven后,你再也不需要用eclipse里的tomcat来运行web项目(实际工作中经常会发现用它会出现不同步更新的情况),只需在对应目录里运行 <code>mvn tomat:run</code>命令,</p>
<p>然后就可在浏览器里运行查看了.如果你想要更多的定制,可以在pom.xml文件里加下面配置:</p>
<p>01 02 03 04 org.codehaus.mojo 05 tomcat-maven-plugin 06 07 /web 08 9090 09 10 11 12 当然你也可以在命令里加参数来实现特定的功能,</p>
<p><span style="color: #ff0000"><strong>下面几个比较常用:</strong></span></p>
<p>1. 跳过测试:-Dmaven.test.skip(=true)</p>
<p>2. 指定端口:-Dmaven.tomcat.port=9090</p>
<p>3. 忽略测试失败:-Dmaven.test.failure.ignore=true 当然,如果你的其它关联项目有过更新的话,一定要在项目根目录下运行mvn clean install来执行更新,再运行mvn tomcat:run使改动生效.</p>
<p><strong>4. mvnDebug tomcat:run</strong></p>
<p>这条命令主要用来远程测试,它会监听远程测试用的8000端口,在eclipse里打开远程测试后,它就会跑起来了,设断点,调试,一切都是这么简单.上面提到的那几个参数在这里同样适用.</p>
<p><strong>5. mvn dependency:sources</strong></p>
<p>&nbsp;故名思义,有了它,你就不用到处找源码了,运行一下,你项目里所依赖的jar包的源码就都有了</p>
<p><span style="color: #ff0000"><strong>Maven常用命令: </strong></span></p>
<p>1. 创建Maven的普通java项目:<br />
&nbsp;&nbsp; mvn archetype:create&nbsp;-DgroupId=packageName&nbsp;-DartifactId=projectName&nbsp;<br />
2. 创建Maven的Web项目:&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp; mvn archetype:create&nbsp;-DgroupId=packageName&nbsp;&nbsp;&nbsp;-DartifactId=webappName-DarchetypeArtifactId=maven-archetype-webapp&nbsp;&nbsp;&nbsp;<br />
3. 编译源代码: mvn compile<br />
4. 编译测试代码:mvn test-compile&nbsp;&nbsp;&nbsp;<br />
5. 运行测试:mvn test&nbsp;&nbsp; <br />
6. 产生site:mvn site&nbsp;&nbsp;<br />
7. 打包:mvn package&nbsp;&nbsp;<br />
8. 在本地Repository中安装jar:mvn install<br />
9. 清除产生的项目:mvn clean&nbsp;&nbsp;<br />
10. 生成eclipse项目:mvn eclipse:eclipse&nbsp;<br />
11. 生成idea项目:mvn idea:idea&nbsp;<br />
12. 组合使用goal命令,如只打包不测试:mvn -Dtest package&nbsp;&nbsp;<br />
13. 编译测试的内容:mvn test-compile&nbsp;<br />
14. 只打jar包: mvn jar:jar&nbsp;<br />
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( -skipping 的灵活运用,当然也可以用于其他组合命令)&nbsp;<br />
16. 清除eclipse的一些系统设置:mvn eclipse:clean&nbsp;</p>
<p><span style="color: #ff0000"><strong>ps:</strong></span></p>
<p>一般使用情况是这样,首先通过cvs或svn下载代码到本机,然后执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse就行了;修改代码后执行mvn compile或mvn test检验,也可以下载eclipse的maven插件。</p>
<div class="jb51code">
<pre class="brush:scala;">
mvn -version/-v    显示版本信息
mvn archetype:generate创建mvn项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建mvn项目

mvn package    生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
mvn jetty:run   运行项目于jetty上,
mvn compile    编译
mvn test   编译并测试
mvn clean    清空生成的文件
mvn site   生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:clean   清除Eclipse项目的配置信息(Web项目)
mvn eclipse:eclipse       将项目转化为Eclipse项目</pre>
</div>
<p>在应用程序用使用多个存储库</p>
<div class="jb51code">
<pre class="brush:scala;">
&lt;repositories&gt;
&lt;repository&gt;
&lt;id&gt;Ibiblio&lt;/id&gt;
&lt;name&gt;Ibiblio&lt;/name&gt;
&lt;url&gt;http://www.ibiblio.org/maven/&lt;/url&gt;
&lt;/repository&gt;
&lt;repository&gt;
&lt;id&gt;PlanetMirror&lt;/id&gt;
&lt;name&gt;Planet Mirror&lt;/name&gt;
&lt;url&gt;http://public.planetmirror.com/pub/maven/&lt;/url&gt;
&lt;/repository&gt;
&lt;/repositories&gt;</pre>
</div>
<div class="jb51code">
<pre class="brush:scala;">
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/</pre>
</div>
<p>发布第三方Jar到本地库中:</p>
<div class="jb51code">
<pre class="brush:scala;">
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar

-DdownloadSources=true

-DdownloadJavadocs=true

mvn -e    显示详细错误 信息.
mvn validate验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test在集成测试可以运行的环境中处理和发布包。
mvn verify    运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources产生应用需要的任何额外的源代码,如xdoclet。</pre>
</div>
<p><span style="color: #ff0000"><strong>总结</strong></span></p>
<p>到此这篇关于maven命令大全的文章就介绍到这了,更多相关maven命令大全内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持琼殿技术社区!</p>
                           
                            <div class="art_xg">
                              <b>您可能感兴趣的文章:</b><ul><li>调用maven命令的BAT脚本分享</li><li>Maven 配置文件 生命周期 常用命令详解</li><li>maven的生命周期及常用命令介绍</li><li>一篇文章带你了解常用的Maven命令</li><li>Maven的常用命令总结大全</li></ul>
                            </div>

                        </div>
                        <!--endmain-->
頁: [1]
查看完整版本: 详解Maven命令大全