Maven Archetype

1. 從project建立archetype

在項目根目錄下,運行 app

mvn archetype:create-from-project  

建立的archetype工程在 app_folder/target/generated-sources/archetype 目錄下,其中archetype-resources包含用來建立原型項目的文件,META-INF/maven/archetype-metadata.xml 是用來對文件結構進行詳細描述的源文件。



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.


版權聲明:本文爲博主原創文章,未經博主容許不得轉載。dom

相關文章
相關標籤/搜索