此文章发布于60
个月前,部分信息可能已经过时
,请自行斟酌确认。
问题描述
升级了 jdk11
后使用 druid
编译报以下警告。
参考:
https://github.com/alibaba/druid/issues/3060
https://github.com/alibaba/druid/issues/2491
https://github.com/alibaba/druid/issues/1346
> Task :compileJava UP-TO-DATE
Errors occurred while build effective model from D:\Android\.gradle\caches\modules-2\files-2.1\com.alibaba\druid\1.1.20\afe9cd598f6fc1a2771819c36f4a004fb9a2a2e1\druid-1.1.20.pom:
'dependencies.dependency.systemPath' for com.alibaba:jconsole:jar must specify an absolute path but is ${env.JAVA_HOME}/lib/jconsole.jar in com.alibaba:druid:1.1.20
'dependencies.dependency.systemPath' for com.alibaba:tools:jar must specify an absolute path but is ${env.JAVA_HOME}/lib/tools.jar in com.alibaba:druid:1.1.20
解决方案
找了半天找不到解决方案,阿里官方仓库回复说编译有问题,运行没问题,1年多没解决。
阿里的大牛没闲功夫解决这种小问题,无奈...
只能自己动手,既然运行没问题,那去掉这个东东吧
编辑:afe9cd598f6fc1a2771819c36f4a004fb9a2a2e1\druid-1.1.20.pom
找到 com.alibaba:jconsole
和 com.alibaba:toolsjar
的依赖注释掉。
<dependencies>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>jconsole</artifactId>
<version>1.6.0</version>
<scope>system</scope>
<systemPath>${jconsolejar}</systemPath>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>tools</artifactId>
<version>1.6.0</version>
<scope>system</scope>
<systemPath>${toolsjar}</systemPath>
<optional>true</optional>
</dependency>
</dependencies>
其它讨论:
openJdk 没有 druid 所需的 jconsole.jar 包。
https://github.com/alibaba/druid/issues/3367
解决方案: 使用 Oracle JDK
(收费)
刚好也看到了