IntelliJ IDEA中可通过Live Templates快速生成日志、空方法、TODO等结构化代码:配置logd模板自动填充类名,mvoid模板生成驼峰命名方法,todo/tdy模板插入日期与作者,testlog模板限定仅在测试类生效。

在IntelliJ IDEA中快速生成标准日志、空方法体、校验逻辑等重复代码,避免手敲出错、漏写分号或括号不匹配,让每次输入都精准触发结构化输出。
创建一个logd调试日志模板
第一步:打开设置界面 → File → Settings → Editor → Live Templates(macOS路径为IntelliJ IDEA → Preferences → Editor → Live Templates)。
点击右侧+号 → 选择Live Template,填写Abbreviation为logd,Description写“Android Log.d with tag”。
在Template text框中粘贴以下内容:
Log.d("$TAG$", "$CONTENT$");
点击Edit variables → 为$TAG$设置Expression:className(),勾选Skip if defined;为$CONTENT$留空,光标初始停在此处。这一步必须做,否则生成时$TAG$会显示为未定义文本,而非当前类名。
在Applicable in中仅勾选Java → Statement,防止在注释或字符串里误触发。
用已有代码片段一键转成模板
在Java文件中写出你常用的空方法体:
public void $METHOD_NAME$() {
$END$
}
选中整段代码 → 右键 → 选择“Save as Live Template…”。
缩写填mvoid,描述写“空public void方法”,点击OK后自动进入变量配置页。
【注意:$METHOD_NAME$必须手动设为expression:camelCaseName(),否则默认生成全大写】,否则生成出来是PUBLICVOIDMETHOD而不是publicVoidMethod。
给模板加动态日期和作者信息
方法一:新建模板,Abbreviation设为todo,Template text写:
// TODO $DATE$ $USER$: $DESCRIPTION$
点击Edit variables → 为$DATE$选date()函数,为$USER$选user()函数,两个都勾选Skip if defined。
方法二:直接复用已有模板 → 在Live Templates列表中右键选中任意一个 → 点击Copy → 新模板缩写改为tdy,把Template text中$DATE$替换成$DATE$ $TIME$,就能带时间戳。
让模板只在测试类里生效
1. 创建新模板,缩写testlog,Template text写:
logger.info("→ Start test: $TEST_NAME$");
$END$
logger.info("← End test: $TEST_NAME$");
2. Edit variables → 为$TEST_NAME$设置Expression:fileNameWithoutExtension(),勾选Skip if defined。
3. 关键操作:点击Define → 在弹出窗口中只勾选Test → Java,其他全部取消。这步不做,模板会在普通.java文件里也出现,干扰补全。
4. 保存后,在以Test结尾的类中输入testlog + Tab,立即展开。


















