2024

2024-01-07

不知道ApiCloud中的com.uzmap.pkg.uzapp.UZApplication对webView做了什么,使用原生webView打开网页总是显示空白一片。

2024-01-08

controller统一异常处理类:org.springframework.web.servlet.HandlerExceptionResolver

2024-01-16

选项目,要选有正向激励的。(正向激励的意思是,做一点,会收获一点回报,再回一点,收获更多,螺旋上升,渐进激励)

2024-03-06

SpringBoot项目中,tomcat启动的,明明架包中有log4j-slf4j-impl-2.17.2.jar这个类和log4j的包,就是没有日志打印。

启动过程中显示:No SLF4J providers were found.

后来通过对比,没日志的是log4j-slf4j-impl-2.17.2.jar版本的,其它项目中,有日志的是log4j-slf4j2-impl-2.20.0.jar版本的,就是

比较新的那个包,替换比较旧的包,后来重启服务器,居然成功了,有日志了。

后来回过头来看日志,才发现自己吃了目光短㳀的亏,原来重点在之后的几句话。。。。

SLF4J(W): No SLF4J providers were found.
SLF4J(W): Defaulting to no-operation (NOP) logger implementation
SLF4J(W): See https://www.slf4j.org/codes.html#noProviders for further details.
SLF4J(W): Class path contains SLF4J bindings targeting slf4j-api versions 1.7.x or earlier.
SLF4J(W): Ignoring binding found at [jar:file:/project/api/user/WEB-INF/lib/log4j-slf4j-impl-2.17.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J(W): See https://www.slf4j.org/codes.html#ignoredBindings for an explanation.

我了个去。

2024-03-08

Springboot controller中返回的json, 修改date默认返回是时间戳

在application.properties中加上

spring.jackson.serialization..write-dates-as-timestamps=true

2024-04-17

一个类找不到方法,明明用的是最新的jar包,还是报这个错误,后来在idea查到,这个类分别在不同的两个包里面,一个包里的那个类确实没有这个方法

tomcat应该是加载了没有那个方法的类,解决办法,把那个没方法的类,从jar包里面删除。

2024-05-22

Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;  【tomcat 9】

这个报错,基本可以判断是包不兼容。

tomcat9 还挺强大的,直接告诉你原因

 按提示把persistence-api-1.0.2.jar删除就好。

- - - - - - -  - - - - - - - - - - - - - - - - - - - - - - - -  - - - - - - - - - - - - - - - 

 java.lang.IllegalArgumentException: The character [_] is never valid in a domain name.

 咋一看,还以为是tomcat报的错,其实解决办法是在nginx, nginx配置中upstream 后面的名字不能用下划线,对掉下划线就好了。

参考博客: https://www.cnblogs.com/xiangxinhouse/p/12050966.html

2024-07-04

记一次编译的奇葩经历。

我的完整错误打包过程是这样的(后来总结的),最开始是用的4.6.10版本,后来只在主pom.xml里把改成了5.8.28版本,本地正常打包。放到服务器上报错。

主要原因是,本地打包的时候,是两个版本都有4.6.10和5.8.28。 然后到服务器上,只有5.8.28. 然后就报错了。

原因:所以clsss中的CharSequence和String是有区别的。如果你class中编译的方法是调用CharSequene的参数,试图是调用方法中是String的方法,必报错。

如果class中用的是String方法,然后想调用定义中是CharSequence的方法,必报错。

所以,再一次敲响了警钟,1、不要多个版本并存。2、重新打包的重要性。

因为我本地打包,是两个版本并存的,本打打包用的是String的方法名参数,(就是读的hutools-all4.6.10)。然后放到服务器上,服务器上只有hutools5.8.28的包,这个包里面,对应方法的参数是CharSequence

然后就爆发了冲突,说方法不存在。

java.lang.NoSuchMethodError: cn.hutool.core.date.DateUtil.parse(Ljava/lang/String;)Lcn/hutool/core/date/DateTime;

个人觉得吧,负责维护hutools-all的也有一定责任,为什么 要把String参数的方法取消呢,两个并且不好吗?String和CharSequene都作为方法名参数,两个都存在,这样兼容性不是更强了。

 

posted on 2024-01-02 15:35  angelshelter  阅读(15)  评论(0编辑  收藏  举报

导航