文件模板变量
一个 file template 可以包含变量,在应用模板时会被其值替换。 变量是一个以美元符号开头的字符串 $ ,后跟变量名。 变量名称可以选择性地用花括号括起来。 例如: $MyVariable 和 ${MyVariable} 是同一个变量的不同表示法。
在模板主体和文件名中可以使用预定义和自定义变量。 例如,如果您在模板的 文件名 字段中输入 MyFile_${MONTH_NAME_FULL} ,生成的文件会在四月份创建时命名为 MyFile_April。 这里, ${MONTH_NAME_FULL} 是一个 预定义变量。 如果您使用 自定义变量,那么 GoLand 会在您基于此模板创建文件时提示您输入变量值。
预定义模板变量
文件模板中可以使用以下预定义变量:
变量 | 描述 |
|---|---|
| 新文件所在包的名称,如果是普通文件则为包名,如果是测试文件则为包名加上 '_test' 后缀 |
| 新文件所在包的名称 |
| 当前系统日期 |
| 当前月份中的日 |
| 当前月份名称的前三个字母(如 Mon、Tue 等) |
| 当前星期的全名(如 Monday、Tuesday 等) |
| 新文件所在目录的路径(相对于项目根目录) |
| 美元符号 |
| 新文件的名称 |
| 当前小时 |
| 当前分钟 |
| 当前秒 |
| 当前月份 |
| 当前月份的全称( January、February 等) |
| 当前月份的前三个字母( Jan、Feb 等) |
| 新实体的名称(文件、类型、接口等) |
| IDE 名称(例如,GoLand) |
| 当前项目的名称 |
| 当前系统时间 |
| 当前用户的登录名 |
| 当前年份 |
变量方法
由于 GoLand 使用 Velocity 作为文件模板的模板引擎,文件模板中的变量可以使用 Java String 方法。 例如,以下是可能的:
${NAME.toUpperCase()}:将新实体(文件)的名称转换为大写字母。${PROJECT_NAME.length()}:打印项目名称的长度。${PRODUCT_NAME.substring(0,5)}:打印您使用的 IDE 名称的前五个字符。
自定义模板变量
除了预定义模板变量,还可以指定自定义变量。 如果必要,可以在模板中使用 #set 指令直接定义自定义变量的值。 在使用相应的变量之前编写指令。
例如,如果您希望使用您的全名而不是通过预定义变量 ${USER} 定义的登录名,请在自定义变量之前添加以下构造:
如果变量的值在模板中未定义,GoLand将会在应用模板时要求您指定该值。