Maven命令与pom文件常量

Posted 凯哥学堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven命令与pom文件常量相关的知识,希望对你有一定的参考价值。

Maven命令: Maven不单止可以在Eclipse上使用,也可以在cmd中使用命令的方式操作,虽然这样十分麻烦,而且有一般也不会使用,但是还是得了解一些可能会用到的操作方式。 1.mvn compile命令:此命令用于编译工程,使用此命令在cmd里编译工程代码时,需要先cd进工程目录下,不然会报错。 使用命令编译工程的话,工程文件夹可以自己手动创建,这个手动创建的样式和用Eclipse创建的样式差不多,工程文件夹下是main和test文件夹还有pom配置文件,这个pom文件里的信息必须要配置对,基本Maven都是围绕着这个文件进行识别的,main和test文件里就是工程代码和测试代码,例如我创建一个MavenTest2的工程:

Maven命令与pom文件常量

根据规定创建好工程后开始进行编译:

Maven命令与pom文件常量

以上是编译成功反馈的信息 编译的代码:

Maven命令与pom文件常量

2.mvn test-compile命令:此命令用于测试编译中的工程代码,测试的话需要依赖JUnit包,所以也要配置一下pom文件,将依赖写上去,这个包的依赖可以在中央类库中找到,然后还需要创建src文件夹然后将main、test文件夹放进去:

Maven命令与pom文件常量

Maven命令与pom文件常量

注意:测试编译前需要先运行mvn compile命令将依赖的JUnit包下载下来,不然会报错:

Maven命令与pom文件常量

然后再运行mvn test-compile命令:

Maven命令与pom文件常量

测试编译的代码:

Maven命令与pom文件常量

3.mvn test命令:此命令用于调用测试并编译工程代码

Maven命令与pom文件常量

代码测试主要是测试、验证代码的逻辑结果是否有问题,如果没问题才能将工程发布出去。

4.mvn package 命令:此命令将工程打包,打包的时候会进行一个测试:

Maven命令与pom文件常量

打好的包会放在这个文件夹下:

Maven命令与pom文件常量

5.mvn jar:jar 命令:此命令只打JAR包,同样的打好的jar包会放在target文件夹里:

Maven命令与pom文件常量

6.mvn clean 命令:此命令用于清理工程文件

Maven命令与pom文件常量

7.mvn archetype:generate命令:此命令是使用Maven的模板骨架创建一个工程,使用此命令需要先创建一个工程文件夹,然后cd进那个文件夹才能执行这个命令。使用这个命令创建工程的话需要下载相应的包,所以需要等待一下:

然后会询问你选择一个数字或应用过滤器,输入1即可:

Maven命令与pom文件常量

接着就是输入工程相关信息:

Maven命令与pom文件常量

创建成功:

Maven命令与pom文件常量

Maven命令与pom文件常量

上面创建的是一个网页工程,我们需要创建javase工程的话就要在选择数字那一步输入15,这个数字代表的是javase工程骨架:

Maven命令与pom文件常量

同样的需要输入这段信息:

Maven命令与pom文件常量

创建成功:

Maven命令与pom文件常量

Maven命令与pom文件常量

工程骨架自带的工程代码:

Maven命令与pom文件常量

以下都是Maven中工程骨架的编号: 1: internal -> appfuse-basic-jsf (创建一个基于Hibernate,Spring和JSF的Web应用程序的原型) 2: internal -> appfuse-basic-spring (创建一个基于Hibernate,Spring和Spring MVC的Web应用程序的原型) 3: internal -> appfuse-basic-struts (创建一个基于Hibernate,Spring和Struts 2的Web应用程序的原型) 4: internal -> appfuse-basic-tapestry (创建一个基于Hibernate, Spring 和 Tapestry 4的Web应用程序的原型) 5: internal -> appfuse-core (创建一个基于 Hibernate and Spring 和 XFire的jar应用程序的原型) 6: internal -> appfuse-modular-jsf (创建一个基于 Hibernate,Spring和JSF的模块化应用原型) 7: internal -> appfuse-modular-spring (创建一个基于 Hibernate, Spring 和 Spring MVC 的模块化应用原型) 8: internal -> appfuse-modular-struts (创建一个基于 Hibernate, Spring 和 Struts 2 的模块化应用原型) 9: internal -> appfuse-modular-tapestry (创建一个基于 Hibernate, Spring 和 Tapestry 4 的模块化应用原型) 10: internal -> maven-archetype-j2ee-simple (一个简单的J2EE的Java应用程序) 11: internal -> maven-archetype-marmalade-mojo (一个Maven的 插件开发项目 using marmalade) 12: internal -> maven-archetype-mojo (一个Maven的Java插件开发项目) 13: internal -> maven-archetype-portlet (一个简单的portlet应用程序) 14: internal -> maven-archetype-profiles () 15: internal -> maven-archetype-quickstart () 16: internal -> maven-archetype-site-simple (简单的网站生成项目) 17: internal -> maven-archetype-site (更复杂的网站项目) 18: internal -> maven-archetype-webapp (一个简单的Java Web应用程序) 19: internal -> jini-service-archetype (Archetype for Jini service project creation) 20: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype) 21: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (无残留) 原型) 22: internal -> softeu-archetype-jsf (JSF+Facelets 原型) 23: internal -> jpa-maven-archetype (JPA 应用程序) 24: internal -> spring-osgi-bundle-archetype (Spring-OSGi 原型) 25: internal -> confluence-plugin-archetype (Atlassian 聚合插件原型) 26: internal -> jira-plugin-archetype (Atlassian JIRA 插件原型) 27: internal -> maven-archetype-har (Hibernate 存档) 28: internal -> maven-archetype-sar (JBoss 服务存档) 29: internal -> wicket-archetype-quickstart (一个简单的Apache Wicket的项目) 30: internal -> scala-archetype-simple (一个简单的scala的项目) 31: internal -> lift-archetype-blank (一个 blank/empty liftweb 项目) 32: internal -> lift-archetype-basic (基本(liftweb)项目) 33: internal -> cocoon-22-archetype-block-plain ([http://cocoapacorg2/maven-plugins/]) 34: internal -> cocoon-22-archetype-block ([http://cocoapacorg2/maven-plugins/]) 35: internal -> cocoon-22-archetype-webapp ([http://cocoapacorg2/maven-plugins/]) 36: internal -> myfaces-archetype-helloworld (使用MyFaces的一个简单的原型) 37: internal -> myfaces-archetype-helloworld-facelets (一个使用MyFaces和Facelets的简单原型) 38: internal -> myfaces-archetype-trinidad (一个使用MyFaces和Trinidad的简单原型) 39: internal -> myfaces-archetype-jsfcomponents (一种使用MyFaces创建定制JSF组件的简单的原型) 40: internal -> gmaven-archetype-basic (Groovy的基本原型) 41: internal -> gmaven-archetype-mojo (Groovy mojo 原型)

所以输入什么编号就会创建相应的工程骨架。 如果需要创建最简单的java工程,需要写具体的骨架名称,所以选择骨架的那一步既可以使用编号也可以使用骨架的名称,我发现用编号的方式选择骨架创建不了简单的java工程,得用骨架的名称:

Maven命令与pom文件常量

创建成功:

Maven命令与pom文件常量

Maven命令与pom文件常量

工程骨架自带的工程代码:

Maven命令与pom文件常量

创建完后就可以使用mvn compile进行编译了,当然其他的测试什么的命令也可以使用了:

Maven命令与pom文件常量

8.mvn archetype:generate -DarchetypeArtifactId=maven-archetype-quickstart命令:此命令用于选择创建普通java工程的骨架,能够跳过之前那些选项直接创建此骨架的工程。

Maven命令与pom文件常量

创建成功:

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量

在Eclipse里选择普通java工程的骨架进行创建工程:

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量

创建完成:

Maven命令与pom文件常量

Maven命令与pom文件常量

pom文件: 在Eclipse打开pom配置文件,首先进入的是修改工程信息的界面,这个界面可以修改工程的信息

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven命令与pom文件常量


以上是关于Maven命令与pom文件常量的主要内容,如果未能解决你的问题,请参考以下文章

Maven命令与pom文件常量

Maven命令与pom文件常量

Maven 入门(下)-- POM.xml介绍与常用命令

Maven统一管理pom依赖版本的方法

Maven工程pom.xml文件秒变gradle工程的命令

怎么使用maven package命令