创建一个 Maven 原型以从一个 class 模板生成多个 classes
Create a maven archetype to generate multiple classes from one class template
我创建了一个自定义 Maven 原型,它有一个 ClassName.java class,其中包含一个 属性 ${属性Name} 及其 getter 和 setter.
package ${package};
// Start of user code (import)
// End of user code (import)
/**
* Block ${BlockName}
*/
public class ${BlockName} extends Block<${BlockName}DTO> {
/**
* Item ${itemName}
*/
private final Item<${itemType}> ${itemName} = new Item.Control<${itemType}>(this, "${itemName}") {
};
// Getter and Setter
}
从这个自定义原型创建新项目时,我想要实现的是提供多个 class 名称(例如:Car、Bicycle ...),并为每个 [=23] 提供多个属性=](例如:Car.door、Car.window、Bicycle.wheel ...),并将从模板 ClassName.java 创建的 classes 作为输出作为 Car.java 和 Bicycle.java,但每个 class 中的 ${itemName}、getter 和 setter 都替换为给定的属性。
您或许可以为此编写一个 groovy 脚本,然后 运行 它 post-generation
Is there a way to post-process project generated from archetype?
另一方面:生成 getters/setters 是标准 IDE 功能(例如,在 Eclipse 中很容易完成),所以我不确定这在原型中是否真的有用。
我创建了一个自定义 Maven 原型,它有一个 ClassName.java class,其中包含一个 属性 ${属性Name} 及其 getter 和 setter.
package ${package};
// Start of user code (import)
// End of user code (import)
/**
* Block ${BlockName}
*/
public class ${BlockName} extends Block<${BlockName}DTO> {
/**
* Item ${itemName}
*/
private final Item<${itemType}> ${itemName} = new Item.Control<${itemType}>(this, "${itemName}") {
};
// Getter and Setter
}
从这个自定义原型创建新项目时,我想要实现的是提供多个 class 名称(例如:Car、Bicycle ...),并为每个 [=23] 提供多个属性=](例如:Car.door、Car.window、Bicycle.wheel ...),并将从模板 ClassName.java 创建的 classes 作为输出作为 Car.java 和 Bicycle.java,但每个 class 中的 ${itemName}、getter 和 setter 都替换为给定的属性。
您或许可以为此编写一个 groovy 脚本,然后 运行 它 post-generation
Is there a way to post-process project generated from archetype?
另一方面:生成 getters/setters 是标准 IDE 功能(例如,在 Eclipse 中很容易完成),所以我不确定这在原型中是否真的有用。