解决druid在OpenJDK11+Gradle中的依赖问题

1 问题描述

环境OpenJDK 11+Gradle,直接在build.gradle中引入druid的依赖,报错如下:

'dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is ${project.basedir}/lib/openjdk-1.8-tools.jar in com.alibaba:druid:1.2.6
'dependencies.dependency.systemPath' for com.sun:jconsole:jar must specify an absolute path but is ${project.basedir}/lib/openjdk-1.8-jconsole.jar in com.alibaba:druid:1.2.6

2 原因分析

具体原因的话在issue中可以知道,其实就是没有兼容JDK11



既然运行没有问题,那么就手动解决编译问题好了。

3 问题解决

根据IDEA的错误提示(具体因druid版本而异):

~/.gradle/caches/modules-2/files-2.1/com.alibaba/druid/1.2.6/c57198d77a31adf5bd36d35f9b12dc936b732587/druid-1.2.6.pom

修改提示中的pom文件:



把上面的两个包注释掉就可以了,在1.2.6版本的druid中,修改pom文件的第703行,添加注释即可:



再次重新导入依赖可以看到没有问题了:


编辑于 2022-02-19 22:37