Maven Archetype

时间:2021-11-30 13:16:14

1. 从project创建archetype

在项目根目录下,运行

mvn archetype:create-from-project  

创建的archetype工程在app_folder/target/generated-sources/archetype 目录下,其中archetype-resources包含用来创建原型项目的文件,META-INF/maven/archetype-metadata.xml
是用来对文件结构进行详细描述的源文件。

Maven Archetype

2. Archetype的一些built-in参数

Variable Meaning
__rootArtifactId__ 做文件夹名替换用,例如__rootArtifactId__-dal
${rootArtifactId} Already explained above, it holds the value entered by the user as the project name (the value that maven ask as the artifactId: in
the prompt when the user runs the archetype)
${artifactId} If your project is composed by one module, this variable will have the same value as ${rootArtifactId}, but if the project contains
several modules, this variable will be replaced by the module name inside every module folder, for example: given a module named portlet-domain inside a project namedportlet,
all the files inside this module folder that are to be filtered will have the value of the variable ${artifactId} replaced by portlet-domainwhereas
the ${rootArtifactId} variable will be replaced by portlet
${package} The user provided package for the project, also prompted by maven when the user runs the archetype
${packageInPathFormat} The same value as ${package} variable but replacing '.' with the character'/',
e.g:, for the package com.foo.bar this variable is com/foo/bar
${groupId} The user supplied groupId for the project, prompted by maven when the user runs the archetype
${version} The user supplied version for the project, prompted by maven when the user runs the archetype
The archetype-metadata.xml stored in the archetype-resources/META-INF/maven
folder after the project is created, is where you need to tweak what you want generated and how.
  • id – This is the name of the module that will be generated.
  • dir – the template dir
  • name – the artifact Id that will be put in the pom file.

版权声明:本文为博主原创文章,未经博主允许不得转载。