java - IntelliJ - 用包含相应类名的参数替换空参数记录器
问题描述
我需要替换项目中旧的记录器声明语句,就像
private final static Logger logger = LogManager.getLogger();
对于每个相应的封闭类,以类名作为参数,例如。
private final static Logger logger = LogManager.getLogger(EnclosingClass.class);
我查看了实时模板,但它不会替换现有的语句。有什么办法吗?
谢谢
解决方案
你可以Edit | Find | Replace Structurally
用来做这个。使用如下模板:
<replaceConfiguration name="Unnamed" text="private final static Logger $logger$ = LogManager.getLogger(); " recursive="false" type="JAVA" pattern_context="member" search_injected="false" reformatAccordingToStyle="false" shortenFQN="false" replacement="private final static Logger $logger$ = LogManager.getLogger($class$); " case_sensitive="true">
<constraint name="__context__" within="" contains="" />
<constraint name="logger" within="" contains="" />
<variableDefinition name="class" script=""logger.containingClass.qualifiedName + ".class""" />
</replaceConfiguration>
您可以复制此模板并Import Template from Clipboard
在对话框右上角的工具按钮下调用。
推荐阅读
- openshift - 无法连接存在于 Openshift 集群之外的外部 redis 集群
- php - 如何使用 Alphatab 的播放速度
- paypal - Paypal 给出了无效的刷新令牌错误,并且未授予同意 Oauth2
- makefile - 将变量从 sub-make 传递到 main make
- swift - TaskGroup `async` vs. `spawn`
- 3d - 有谁知道 CaptureReality 的二进制网格和搅拌机的二进制网格有什么区别?
- android - 如何在 Android Studio 中自动导入?
- redirect - GCP - 如何使用 gcloud url-maps 创建 URL 重定向路径规则?
- javascript - Axios + reactJS + passportJS登录重定向不起作用?
- reactjs - 如何在useEffect react中使用handleSubmit formik