我想创建一个原型,让用户可以提供artifactId
。然后我想使用这个artifactId
创建两个文件。
以下是一个示例。
artifactId= box
FILE 1: copy-box.txt
FILE 2 : Box.java
创建 copy-box.txt
很容易。但如何创建首字母大写的 Box.java
文件呢?
我想创建一个原型,让用户可以提供artifactId
。然后我想使用这个artifactId
创建两个文件。
以下是一个示例。
artifactId= box
FILE 1: copy-box.txt
FILE 2 : Box.java
创建 copy-box.txt
很容易。但如何创建首字母大写的 Box.java
文件呢?
在maven原型中存在一个错误。请查看错误报告ARCHETYPE-406和ARCHETYPE-397。
修复后,将可以定义和使用自定义的requiredProperty
。
在archetype-metadata.xml中添加:
<requiredProperties>
<requiredProperty key="classPrefix" >
<defaultValue>
${artifactId.substring(0,1).toUpperCase()}${artifactId.substring(1)}
</defaultValue>
</requiredProperty>
</requiredProperties>
archetype.properties
中添加classPrefix
。FilesetArchetypeGenerator
接口,可以为原型生成做出良好的贡献。