mavenarchetype(maven archetype可以代替maven吗)
本篇文章给大家谈谈mavenarchetype,以及maven archetype可以代替maven吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
如何创建maven archetype
以下是创建maven archetype的步骤:
1. 给该原型创建一个新的工程和pom.xml文件
该原型的pom.xml示例如下:
projectxmlns=""xmlns:xsi=""
xsi:schemaLocation=""
modelVersion4.0.0/modelVersion
groupIdmy.groupId/groupId
artifactIdmy-archetype-id/artifactId
version1.0-SNAPSHOT/version
packagingjar/packaging
/project
需要你做的所有事情就是指定一个groupId,artifactId和version。这三个参数需要以后在命令行通过archetype:generate命令中调用原型时使用。
2. 创建原型描述符
这个原型描述符时一个叫做archetype.xml的文件,它必须位于src/main/resources/META-INF/maven/目录中。在quickstart原型中会找到以下原型描述符:
archetype xmlns=""xmlns:xsi=""
xsi:schemaLocation=""
idquickstart/id
sources
sourcesrc/main/java/App.java/source
/sources
testSources
sourcesrc/test/java/AppTest.java/source
/testSources
/卜兄archetype
id标签应该岩谨跟本原型pom.xml中的artifactId相同。
allowPartialtrue/allowPartial标签时可选的,在既存的工程上运行archetype:generate命令时有可能会用到。
sources、resources、testSources、testResources和siteResources标签代表不同的粗弊基工程片段:
sources=src/main/java
resources=src/main/resources
testSources=src/test/java
testResources=src/test/resources
siteResources=src/site
sources和testSources能够包含source元素来指定源文件
testResources和siteResources能够包含resource元素来指定资源文件
把其他的诸如src/main/webapp目录中资源放到resources标签中
至此,就指定了一个要创建的,而且目录不为空的独立的文件。
以下是quickstart原型中定义目录结构:
archetype
|-- pom.xml
`-- src
`-- main
`--resources
|--META-INF
| `-- maven
| `--archetype.xml
`--archetype-resources
|--pom.xml
`--src
|-- main
| `-- java
| `-- App.java
`-- test
`-- java
`-- AppTest.java
3. 创建原型文件和该原型的pom.xml
接下来要创建的原型组件是该原型的pom.xml文件,任何pom.xml都不要忘记设置artifactId和groupID(${artifactId}/${groupId})的变量。这两个变量会在命令行中调用archetype:generate时来初始化。
以下是一个原型pom.xml的示例:
projectxmlns=""xmlns:xsi=""
xsi:schemaLocation=" "
modelVersion4.0.0/modelVersion
groupId${groupId}/groupId
artifactId${artifactId}/artifactId
version${version}/version
packagingjar/packaging
nameAcustom project/name
url;/url
dependencies
dependency
groupIdjunit/groupId
artifactIdjunit/artifactId
version3.8.1/version
scopetest/scope
/dependency
/dependencies
/project
4. 安装原型并运行原型插件
现在可以调用mvn install命令来安装原型了。
至此我们的原型就创建完成了,你可以通过下面的命令在本地系统中使用它。在这个命令中,你需要给要使用的原型指定完整的信息(包括groupId、artifactId和version),以及你要创建的新工程的信息(包括artifactId和groupId)。不要忘记包含原型的版本信息,如果没有包含版本信息,原型的创建就会报出错误信息:RELEASE was not found)。
mvn archetype:generate \
-DarchetypeGroupId=archetype-groupId \
-DarchetypeArtifactId=archetype-artifactId \
-DarchetypeVersion=archetype-version \
-DgroupId=my.groupid \
-DartifactId=my-artifactId
一旦你的原型达到了你满意的状态,你就可以把它作为原型模板来部署,然后让任意Maven用户来使用。
5. 创建原型的另外一种方法
可以使用如下的方法来提供手工创建原型的目录结构:
mvn archetype:generate
-DgroupId=[yourproject‘s group id]
-DartifactId=[your project‘s artifact id]
-DarchetypeArtifactId=maven-archetype-archetype
然后,你就可以定制archetype-resources目录和archetype.xml文件中的内容,然后回到上面的步骤4(安装原型并运行原型插件)
怎么看maven工程的 archetype
会看到常常的输出,有很多可用的Archetype供选择;每一个Archetype前面都有一个对应的编号,同时命令行会提供一个默认的编号,其对应的Archetype为maven-archetype-quickstart,回车选择该Archetype:
紧接着Maven会提示输入要创建项目的groupId,artifactId,version及包名package:
Archetype会根据输入的信息创建项目骨架。在当前目录下,创建一个名为hellomvn(定义的artifactId)的子目录,从中可以看到项目的基本结构:基本的pom.xml,代码目录src/main/java,同时包含一个java类:com.mvntest.hellomvn.core.App。测试代码目录src/test/java,也包含一个测试Jave类com.mvntest.hellomvn.core.AppTest。
一个项目的基本骨架生成。
Archetype
可以讲Archetype理解成Maven项目的模板,例如maven-archetype-quickstart就是最简单的Maven项目模板,只需提供基本的元素,如groupId,artifactId,version等,它就能生成项目的基本结构及POM文件。
Maven Archetype Plugin
使用Archetype的一般步骤
命搭简令——mvn archetype:generate
输入命令后,Archetype插件会输出一个Archetype列表供用户选择;选择自己想要使用的Archetype,输入对应编号
提示输入一些基本参数,如groupId,artifactId,version,package等
Archetype插件生成项目骨架
常用Archetype
maven-archetype-quickstart
默认的Archetype,基本内容包括:
一个包含junit依赖声明的pom.xml
src/main/java主代码目录及一配枝仿个名为App的类
src/test/java测试代码目录及一个名为培纤AppTest的测试用例
maven-archetype-webapp
一个最简单的Maven war项目模板,当需要快速创建一个Web应用的时候可以使用它。生成的项目内容包括:
一个packaging为war且带有junit依赖声明的pom.xml
src/main/webapp/目录
src/main/webapp/index.jsp文件
src/main/webapp/WEB-INF/web.xml文件
创建自己的Archetype
Archetype Catalog
Catalog用来指定maven-archetype-plugin读取archetype-catalog.xml文件的位置:
internal——maven-archetype-plugin内置的
local——本地的,位置为~/.m2/archetype-catalog.xml
remote——指向Maven中央仓库的Catalog
file://
http://
[img]如何解决maven archetype加载太慢的方法
1.
??
Eclipse使用Maven创建Web时找不到maven-archetype-webap或报
Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webapp:RELEASE from any of the configured repositories
解决方法:
window--preferences--Maven--Archetypes--Add Remote Catalog中添州没氏好加
catalog File:
Description: 随便填写
2.为Eclipse添加自己的maven环境
选择window--preferences--Maven--册核纳Installations--Add
选择本地maven安装目录,--Apply
选择User Settings--选择本地maven安装目录下conf--settings.xml--ok
重启Eclipse。
3.修改本地maven库地址
在settings.xml中添加E:/localMaven/
4.启用jetty-run命令
settings.xml中添加org.mortbay.jetty
5.规范maven库
settings.xml中的增加可以为局域网地址
6.安装jar包到本地maven库
mvn install:install-file -Dfile=E:\jodconverter-2.2.2.jar -DgroupId=com.arto
fsolving -DartifactId=jodconverter -Dversion=2.2.2 -Dpackaging=jar -DgeneratePom
=true -DcreateChecksum=true
7.maven 关联本地项目jar包
com.artofsolving
jodconverter-core
3.0-beta-4
system
${basedir}/lib/jodconverter-core-3.0-beta-4.jar
lib目录必须与pom.xml同级
8.can not calculate build plan:
选中项目右键—》maven--Update Dependencies.
-
关于mavenarchetype和maven archetype可以代替maven吗的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。