The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available
开发环境
IDEA2020.3, jdk1.8.0_231
问题描述
开发中引入了druid-spring-boot-starter最新版本1.2.6,项目install时的时候一直出现警告
The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details
寻找问题
按照提示编辑运行配置,输出debug日志
install -X -f pom.xml
再次执行,得到详细的日志‘
[DEBUG] =======================================================================
[WARNING] The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available: 2 problems were encountered while building the effective model for com.alibaba:druid:1.2.6
[ERROR] 'dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is ${project.basedir}/lib/openjdk-1.8-tools.jar @
[ERROR] 'dependencies.dependency.systemPath' for com.sun:jconsole:jar must specify an absolute path but is ${project.basedir}/lib/openjdk-1.8-jconsole.jar @
从日志看, com.sun:tools:jar,com.sun:jconsole:jar必须指定绝对路径,不能是相对路径!
但是是在哪里指定的呢?
仔细想了想,应该是在m2包目录下。结果真的在 druid-1.2.6.pom 文件中给找到了
pom文件在这里
C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.6\druid-1.2.6.pom
使用notepad++ 打开搜索 com.sun,可以看到有两处,正式报错的两个地方!!!

com.alibaba.druid 这个包应该是使用OpenJDK构建的,所以添加了这两个依赖。
所以导致这个的原因也就明了了
- 开发环境使用的JDK和 com.alibaba.druid 包不一致;
- 这是 com.alibaba.druid 的一个bug,未考虑不同JDK环境的影响
解决问题
问题是找到了,该怎么解决呢?
目前,我想到的解决方案有3个
- 切换到其他版本,如 1.2.5。(已验证)
- 注释掉这两个依赖。正常开发没有影响。(已验证)
- 使用OpenJDK。(未验证)
还有一个办法就是视而不见,因为只是警告,并不影响使用。
后话
在 https://github.com/alibaba/druid 项目Issues 搜索也可以看到类似的问题。1.2.6 版本有人提,但是目前还没人解答
有趣的是,这个问题在其他版本(1.1.21)也出现过,并且后来的版本也修复了。但是最近又出现了这样的问题...
The POM for com.alibaba:druid:jar:1.2.6 is invalid, transitive dependencies (if any) will not be available的更多相关文章
- Maven 错误 :The POM for com.xxx:jar:0.0.1-SNAPSHOT is invalid, transitive dependencies (if any) will not be available
一个大的maven 项目,结构是一个根pom,下面几个小的module,包括了appservice-darc,appservice-entity等,其中appservice-darc 依赖了 apps ...
- maven编译问题之 -The POM for XXX is invalid, transitive dependencies (if any) will not be available
问题一: 把父工程tao-parent install 到maven本地仓后,接着install tao-common工程,然后报错 报错信息如下: [WARNING] The POM for com ...
- mvn 报错 - The POM for <name> is invalid, transitive dependencies (if any) will not be available
核心: 通过 mvn dependency:tree -X 分析依赖解决方案: 解决依赖冲突版本 1. MILGpController 编译突然报错 14:10:28 [ERROR] Failed ...
- The POM for XXX is invalid, transitive dependencies (if any) will not be available解决方案
今天,某个开发的环境在编译的时候提示警告The POM for XXX is invalid, transitive dependencies (if any) will not be availab ...
- 阿里巴巴高新能数据源com.alibaba.druid.pool.DruidDataSource的jar包配置
aspectjweaver-1.7.4.jar druid-0.2.9.jar 两个包,用于提供com.alibaba.druid.pool.DruidDataSource
- com.alibaba.druid.sql.parser.ParserException: syntax error, QUES %, pos 80 like报错解决
最近,把各应用的jdbc连接池统一从dbcp2改成了druid,运行时druid报sql解析错误,如下: select * from test where 1=1 &l ...
- Druid.jar包
首先了解一下,什么是Druid. Druid是Java语言中最好的数据库连接池,它能够提供强大的监控和扩展功能. Druid是一个JDBC组件,它包括三部分: 1)DruidDriver 代理Driv ...
- com.alibaba.druid.pool.DruidDataSource : {dataSource-2} init error
这几天准备写一个项目,其中的整合druid的时候,发现出现了下面这个错误.找了好久都没有找到.网上的各种解决方法都不对. 2018-11-07 16:26:28.940 INFO 19684 --- ...
- alibaba/druid 下的 密码加密
使用ConfigFilter cliangch edited this page on 3 Feb · 12 revisions ConfigFilter的作用包括: 从配置文件中读取配置 从远程ht ...
随机推荐
- powershell基础知识
基本命令 我们先从最基本的命令入手,Windows Powershell命令中get类命令是很庞大的一个命令工具集合,而且get类命令也是Powershell中占比最大的. 1.Get-Alias G ...
- C# 基本控件使用练习
自己设计并编写一个 Windows 应用程序,要求用到 TextBox.GroupBox.RadioButton.CheckBox.ComboBox.ListBox 控件. 代码如下: 页面1: us ...
- nginx的fastcgi配置
首先参考了一份配置注释(来自"小刚的博客"): #运行用户 user www-data; #启动进程,通常设置成和cpu的数量相等 worker_processes 1; #全局错 ...
- gin中在中间件或handler中使用goroutine
package main import ( "fmt" "github.com/gin-gonic/gin" "log" "tim ...
- Servlet-通过继承HttpServlet类实现Servlet程序
通过继承HttpServlet类实现Servlet程序(开发一般用) 一般在实际项目开发中,都是使用继承 HttpServlet类的方式实现Servlet程序 1,编写一个类去继承 HttpServl ...
- 阿里巴巴基于应用和变更的交付模式|阿里巴巴DevOps实践指南
编者按:本文源自阿里云云效团队出品的<阿里巴巴DevOps实践指南>,扫描上方二维码或前往:https://developer.aliyun.com/topic/devops,下载完整版电 ...
- Kubernetes的Controller进阶(十二)
一.Controller 既然学习了Pod进阶,对于管理Pod的Controller肯定也要进阶一下,之前我们已经学习过的Controller有RC.RS和Deployment,除此之外还有吗,如果感 ...
- Java虚拟机的意义
什么是Java虚拟机? 作为程序员,大家都知道写的代码都是在Java虚拟机上运行的,但大家是否知道,Java虚拟机又是什么呢? 先看看网上搜到有关JAVA虚拟机的介绍 : 虚拟机是一种抽象化的计算机, ...
- PyCharm专业版破解教程
破解步骤: 1. 下载激活包和注册码:https://pan.baidu.com/s/1_1nrQdTElf4aEg8vGnMTzg 2. 将下载的破解包放入PyCham安装目录的bin文件夹中 3. ...
- 微服务架构 | 7.2 构建使用 JWT 令牌存储的 OAuth2 安全认证
目录 前言 1. JWT 令牌存储基础知识 1.1 JSON Web Token 2. 构建使用 JWT 令牌存储的 OAuth2 服务器 2.1 引入 pom.xml 依赖文件 2.2 创建 JWT ...