Maven使用常用命令

> mvn clean
删除target文件夹
> mvn clean test
编译测试代码,默认被放到target/test-classes文件夹下面
> mvn clean compile
编译主代码,并放到target/classes文件夹下
> mvn clean package
打包代码,我们可以看到target文件下生成了一个potato-core-1.0-SNAPSHOT.jar文件(注意:maven会在打包之前执行编译,测试等操作),查看控制台输出我们可以看到打包过程的清晰过程
 
上面的打包后的jar文件是不可执行的,如果需要打包可执行的jar包,则需要利用shade插件,我们需要在插件中配置如下信息
<plugin>

                         <groupId> org.apache.maven.plugins</groupId >

                         <artifactId> maven-shade-plugin</artifactId >

                         <version> 1.2.1</version >

                         <executions>

                               <execution>

                                     <phase> package</phase >

                                     <goals>

                                           <goal> shade</goal >

                                     </goals>

                                     <configuration>

                                           <transformers>

                                                 <transformer

                                                       implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer" >

                                                       <mainClass> ktgu.lab.potato.App</mainClass >

                                                 </transformer>

                                           </transformers>

                                     </configuration>

                               </execution>

                         </executions>

                   </plugin>

然后再次执行>mvn clean package,我们可以看到target文件夹下有两个文件

original-potato-core-1.0-SNAPSHOT.jar
potato-core-1.0-SNAPSHOT.jar (可执行的)
> java -jar potato-core-1.0-SNAPSHOT.jar
> Hello world
 
> mvn clean install
打包并将打包好的jar包发布到本地仓库
 
> mvn dependency:list
查看当前项目的依赖列表,使用eclipse的pom设计器可以看到图形化的显示结果,会更直观
 
> mvn dependency:tree
查看当前项目的依赖树
 
> mvn dependency:analyze
项目依赖分析
 
> mvn clean deploy
将jar文件部署到仓库,需要在pom文件中指定要部署的目的地仓库
 
<distributionManagement>

             <repository>

                   <id> nexus-releases</id >

                   <name> Local nexus releases repository</name >

                   <url> http://localhost/nexus/content/repositories/releases/ </url>

             </repository>

             <snapshotRepository>

                   <id> nexus-snapshots</id >

                   <name> Local nexus snapshots repository</name >

                   <url> http://localhost/nexus/content/repositories/snapshots/ </url>

             </snapshotRepository>

       </distributionManagement>

说明:上面的配置文件中指定的是将打包文件部署到本地的一个仓库,对外部或本地仓库的访问一般都需要配置权限,所以还需要在settings.xml文件中配置访问权限

<servers>

          <server>

               <id>nexus-releases</id>

               <username>admin</username>

               <password>admin123</password>

          </server>

          <server>

               <id>nexus-snapshots</id>

               <username>admin</username>

               <password>admin123</password>

          </server>

     </servers>

上面的<server>.<id>节点中的名称需要和<repository>的<id>中定义的名称保持一致就可以了

你可能感兴趣的:(maven)