Maven中的参数分别是什么意思?
2017-09-15 10:08
896 查看
groupId
artifactId
version
package
archetypeArtifactId
archetypeGroupId
archetypeCatalog
interactiveMode
artifactId
version
package
archetypeArtifactId
archetypeGroupId
archetypeCatalog
interactiveMode
Maven中的主要参数解析如下: groupId: 代表组织和整个项目的唯一标志。比如说所有的Maven组件的groupId都是org.apache.maven。 artifactId: 具体项目的名称,它于groupId共同确定一个项目在maven repo中的位置,例如,groupId=org.codehaus.mojo, artifactId=my-project的项目,在maven repo中的位置为:$M2_REPO/org/codehaus/mojo/my-project version: 用于说明目前项目的版本,在引用依赖的时候确定具体依赖的版本号。 packaging: 规定项目的输出格式,包括jar、war、pom、apk等,根据实际需要确定。例如,开发一般的java库,可以使用jar packaging;开发android则是apk packaging。 一般来说,Maven肯定要用到pom文件,全名叫Project Object Model。简单的说,就是这个pom.xml文件含有project的相关信息。以下面的pom文件为例,举个简单的例子: <project xmlns="http://maven,apache.org/POM/4.0.0" xmlns:xsi="http://www.w3c.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.apache.maven</groupId> <artifactId>my-project</artifactId> <version>1.2.1</version> <packaging>war</packaging> </project> 其中,groupId代表的是唯一的一个标识,比如一个组织或者一个项目的名字,基本上是唯一的,以这个maven为例就是org.apache.maven。 artifactId代表的是名字,如果刚刚那个有点像身份证,这个就是类似姓名的东西。 version比较好理解,就是版本号,比如1.2.1版本这样的。 最后的packaging是我们提供组件的类型,比如使用时打包成一个jar或者是一个war之类的,默认为打成jar包。 还要注意不得不提到maven的一个插件maven-archetype-plugin。这个插件是为了方便我们弄一些模板或者原型直接生成会更加方便。通过cmd指令,我们可以确定我们需要的是哪个原型。还是举个cmd的命令的例子: mvn archetype:generate -DarchetypeArtifactId=jersey-quickstart-grizzly2 -DarchetypeGroupId=org.glassfish.jersey.archetypes -DinteractiveMode=false -DgroupId=com.example -DartifactId=simple-service -Dpackage=com.example -DarchetypeVersion=2.17 这个命令是直接生成项目的一个指令: archetypeGroupId:这个和刚刚那个很像,指的是原型唯一的标识archetypeArtifactId:原型的名字。 interactiveMode:交互模式,默认为true。我上面的cmd命令是一次性把该输入的都输入进去了,免去了交互所以是false。如果你选择交互的话,就是有一步一步的选项指引你去选择和填写相关的标识之类的。 archetypeCatalog:这个我例子里面没有,指的是查找规则。 至于后面那些groupId之类的,前面已经说过的就是生成的项目的一些标识名字之类的相关信息,不过要注意这个package是生成项目的包结构而不是提供组件的类型了。
相关文章推荐
- Maven中的参数分别是什么意思?
- 电磁继电器上的参数:10A 250VAC 10A 125VAC。为什么一个交流250,一个交流125,这两个分别代表什么意思?
- 百度url参数分别代表什么意思?
- sort(t+1,t+n+1,cmp);三个参数分别什么意思?
- iPhone 的序列号「Serial No.」、UDID、IMEI、ICCID 分别是什么意思
- HTTP状态301、404、200、304分别表示什么意思
- asp.net中,<%#%>,<%=%>和<%%>分别是什么意思,有什么区别
- Keil MDK中的Code, RO-data , RW-data, ZI-data分别代表什么意思?(转)
- gradle和maven有什么用?分别有什么区别?[转载来源于知乎]
- gradle和maven有什么用?分别有什么区别?
- spring官网下载时.dist,.docs,.schema后缀分别代表什么意思
- Keil MDK中的Code, RO-data , RW-data, ZI-data分别代表什么意思?
- @optional 与 @required 分别代表什么意思
- [转载]Tensorflow 的reduce_sum()函数的axis,keep_dim这些参数到底是什么意思?
- (转)set JAVA_OPTS的各项参数是什么意思
- 声明中"AutoEventWireup"、"Codebehind"、"Inherits"分别表示什么意思?
- a:link,a:visited,a:hover,a:active 分别是什么意思?
- Keil MDK中的Code, RO-data , RW-data, ZI-data分别代表什么意思?(转)
- ./configure make make install分别是什么意思呀
- QT中的setGeometry (9, 9, 50, 25) 四个参数分别是指什么?