Micronaut CLI
Micronaut CLI 是创建新 Micronaut 项目的推荐方式。 CLI 包括用于生成特定类别项目的命令,允许您在构建工具、测试框架之间进行选择,甚至可以选择要在应用程序中使用的语言。 CLI 还提供用于生成工件(如控制器、客户端界面和无服务器功能)的命令。
我们有一个网站可以用来代替 CLI 生成项目。查看 Micronaut Launch 开始吧!
当您的计算机上安装了 Micronaut 时,您可以使用 mn 命令调用 CLI。
$ mn create-app my-app
Micronaut CLI 项目可以通过 micronaut-cli.yml 文件识别,如果它是通过 CLI 生成的,则该文件包含在项目根目录中。该文件将包括项目的配置文件、默认包和其他变量。项目的默认包根据项目名称进行评估。
$ mn create-app my-demo-app
导致默认包为 my.demo.app。
您可以在创建应用程序时提供自己的默认包,方法是在应用程序名称前加上包前缀:
$ mn create-app example.my-demo-app
导致默认包成为示例。
互动模式
如果您不带任何参数运行 mn,Micronaut CLI 将以交互模式启动。这是一种类似 shell 的模式,允许您运行多个 CLI 命令而无需重新初始化 CLI 运行时,特别适合您使用代码生成命令(例如 create-controller)、创建多个项目或只是探索 CLI特征。 Tab 补全已启用,使您能够按 TAB 键查看给定命令或标志的可能选项。
$ mn
| Starting interactive mode...
| Enter a command name to run. Use TAB for completion:
mn>
帮助和信息
可以使用命令上的帮助标志查看一般使用信息。
mn> create-app -h
Usage: mn create-app [-hivVx] [--list-features] [-b=BUILD-TOOL] [--jdk=<javaVersion>] [-l=LANG]
[-t=TEST] [-f=FEATURE[,FEATURE...]]... [NAME]
Creates an application
[NAME] The name of the application to create.
-b, --build=BUILD-TOOL Which build tool to configure. Possible values: gradle, gradle_kotlin,
maven.
-f, --features=FEATURE[,FEATURE...]
-h, --help Show this help message and exit.
-i, --inplace Create a service using the current directory
--jdk, --java-version=<javaVersion>
The JDK version the project should target
-l, --lang=LANG Which language to use. Possible values: java, groovy, kotlin.
--list-features Output the available features and their descriptions
-t, --test=TEST Which test framework to use. Possible values: junit, spock, kotest.
可以在任何创建命令上使用 --list-features 标志查看可用功能列表。
mn> create-app --list-features
Available Features
(+) denotes the feature is included by default
Name Description
------------------------------- ---------------
Cache
cache-caffeine Adds support for cache using Caffeine (https://github.com/ben-manes/caffeine)
cache-ehcache Adds support for cache using EHCache (https://www.ehcache.org/)
cache-hazelcast Adds support for cache using Hazelcast (https://hazelcast.org/)
cache-infinispan Adds support for cache using Infinispan (https://infinispan.org/)
更多建议: