一切福田,不離方寸,從心而覓,感無不通。

idea中配置Lombok + Logback + Slf4j打印日志(附所有踩坑记录)

本文介绍非spring项目中利用Lombok + Logback + Slf4j记录日志,并附上所有的踩坑记录 本文环境 macos Idea2019.2 配置过程 首先在idea中下载lombok插件 在pom.xml文件中引入Lombok,Logback,Slf4j依赖

  在项目中的resources文件夹中添加logback.xml配置文件

  编写代码测试

输出为 踩过的坑 看上去简简单单几步就完成了,然后并不是,接下来附上踩过的坑以及解决方法 idea中plugins的marketplace直接打不开 ​ 在idea中使用lombok需要在plugins中的marketplace中下载插件,然而我下载时marketplace迟迟无法连接上 ​ 我们需要在设置中的Appearance & Behavior --> System Settings --> Http Proxy中选择Auto-detect proxy settings勾选Automatic proxy configuration URL选项并填写url为http://127.0.0.1:1080,重启idea 代码运行成功,但是不显示日志信息 ​ 也是很邪门的一种情况,代码没错,但是不显示log打印的信息。 ​ 解决方案为,在Build,Execution,Deployment–>compiler–>Annotation Processors中勾选Enable annotation processing,重启idea 多个Slf4j冲突 报错信息如下

  ​ 说明是jar包冲突了,maven仓库中可能同时包含了log4j,logback,然后slf4j在程序运行时,不知道binding哪一个jar包。 解决方案为:在maven仓库中删除其中一个jar包,只保留一个即可。   from:https://blog.csdn.net/jerseywwwwei/article/details/105871320

龙生   09 Dec 2020
View Details

基于 spring boot 下logback 的 logback-spring.xml 配置文件

  from:https://my.oschina.net/haopeng/blog/3065616

龙生   09 Dec 2020
View Details

日志配置logback-spring.xml

参考官方网址: https://logging.apache.org/log4j/2.x 一、log4j日志级别配置说明

二、logback-spring.xml配置文件

注意:登录日志的记录还需进行以下配置,用lombok的话直接使用注解即可 @Slf4j(topic = "user-login") 配置效果如下:   from:https://www.cnblogs.com/54hsh/p/12684241.html

龙生   09 Dec 2020
View Details

Android Studio首次使用问题解决

今天下了个Android Studio,准备换个平台,但是创建新的项目遇到点问题,网上也没有找到完整的解决方法,研究了一下发出来供大家参考 问题:找不到R文件 报错Error:Execution failed for task ':app:processDebugResources'. > com.android.ide.common.process.ProcessException: Failed to execute aapt 问题原因:compileSdkVersion高于buildToolsVersion,可以用高版本的build-tool去构建一个低版本的sdk工程,但是反过来就不行了 解决方法:1.更新Android-SDK Build-Tools 2.修改build.gradle中相应版本号 之后我的问题就解决了 可能对于很多人来说根本不是问题,但是既然我遇上了,也就有可能有朋友还会遇到相同问题,希望能提供参考   from:https://www.cnblogs.com/madzxr/p/6322504.html

龙生   09 Dec 2020
View Details

js调app原生方法

// 定义 const ApiBridge = {     msgQueue: [],     callbackCache: [],     callbackId: 0,     processingMsg: false,     isReady: false,     isNotifyReady: false }; ApiBridge.callNative = function(clz, method, args, callback) {     var msgJson = {};     msgJson.clz = clz;     msgJson.method = method;     if (args != undefined)         msgJson.args = args;     return prompt(JSON.stringify(msgJson)); }; // 调用 setTimeout(() => {         this.$ApiBridge.callNative("KCApiTSLModule", "notifyF", {           action: 'closePage',           param: {}         });       }); 以上代码经测试不能很好的兼容ios,下面的代码可以:

 

龙生   09 Dec 2020
View Details