如何让Lazybones处理子模板?

时间:2016-02-22 09:58:35

标签: lazybones

第一次玩Lazybones。我已经整理了一个简单的项目,试图包含一个子模板。

这是项目结构:

.
├── build.gradle
├── gradlew
├── gradlew.bat
├── README.md
└── templates
    ├── groovy-lambda
    │   ├── build.gradle
    │   ├── lazybones.groovy
    │   ├── README.md
    │   ├── src
    │   │   ├── main
    │   │   │   ├── groovy
    │   │   │   │   └── .retain
    │   │   │   └── resources
    │   │   │       └── .retain
    │   │   └── test
    │   │       ├── groovy
    │   │       │   └── .retain
    │   │       └── resources
    │   │           └── .retain
    │   └── VERSION
    └── subtmpl-groovy-lambda-main-class
        ├── GroovyLambdaMainClass.groovy
        ├── lazybones.groovy
        └── VERSION

我包括像这样的子模板

lazybones {
    template "groovy-lambda" includes "groovy-lambda-main-class"
}

子模板打包在主要的artefact档案中:

.
├── build.gradle
├── .lazybones
│   ├── groovy-lambda-main-class-template-1.0-SNAPSHOT.zip
│   └── stored-params.properties
├── README.md
└── src
    ├── main
    │   ├── groovy
    │   └── resources
    └── test
        ├── groovy
        └── resources

然而,子模板永远不会在模板执行时被处理,即子模板lazybones.groovy脚本似乎无法运行。

整个项目在GitHub上可用here。重现问题:

git@github.com:eddgrant/lazybones-template-aws-groovy-lambda.git
cd lazybones-template-aws-groovy-lambda.git
./gradlew installAllTemplates

cd /tmp
lazybones --verbose create groovy-lambda 1.0-SNAPSHOT groovy-lambda

我可能错过了一些微不足道的东西但却无法弄明白。非常感谢任何指针。

1 个答案:

答案 0 :(得分:0)

一切都按预期工作。子模板仅由lazybones generate命令使用,该命令仅在您创建基于Lazybones的项目后才起作用。

经典示例类似于Grails或Rails项目,您可以使用generate命令创建新控制器或域类。