警告: 目标发行版 1.8 与默认的源发行版 13 冲突

升级jdk13 后出现 警告: 目标发行版 1.8 与默认的源发行版 13 冲突 错误的问题:

 在数据校验层Validator 使用使用 @Inject 引用 service层的方法,如果 service层的 方法有 @Before(Tx.class) 的就会报上面的错误,不知是怎么回事

image.png


image.png


image.png

image.png

评论区

JFinal

2020-03-19 22:24

可能是 cglib-nodep 这个依赖的版本不支持 JDK 13,升级一下到最新版本试试:
https://mvnrepository.com/artifact/cglib/cglib-nodep/3.3.0

晴天小雨

2020-03-20 11:01

我的项目没有引入cglib-nodep,只要将service层的@Before(Tx.class) 全部去掉,就可以了。

晴天小雨

2020-03-20 11:03

后来我引入了,没有将service层的@Before(Tx.class) 全部去掉 ,不能正常启动,去掉@Before(Tx.class),但是在能正常启动情况下提示
WARNING: Illegal reflective access by net.sf.cglib.core.ReflectUtils$1 (file:/C:/Users/Administrator/.m2/repository/cglib/cglib-nodep/3.3.0/cglib-nodep-3.3.0.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)

fancool

2020-05-21 17:07

这个问题解决掉没有呢, 我也碰到这个了

混世顽童

2020-09-15 17:47

@fancool maven的设置的jdk和运行程序的jdk不一致造成的,运行程序选1.8版本的jdk就好了

fmpoffice

2022-02-18 16:09

AppConfig.java 中 setToCglibProxyFactory

热门反馈

扫码入社