目录

报错起因

报错截图

运行环境

数据库配置

解决思路


报错起因

  在web项目上拉取代码启动web服务抛CannotGetJdbcConnectionException。

报错截图

运行环境

  windows + idea + maven + tomcat + springMVC + mybatis

数据库配置

url=xxx
driverClassName=xxx
username=xxx
password=xxx

确认配置没问题。

解决思路

定位问题 > 解决问题 > 测试验证

在tomcat安装目录 webapps > 找对应服务目录 > 数据库配置文件,发现url的值确实是

http://maven.apache.org

排查url的关键值存在项目中哪些文件中?

根据url全局搜索(ctrl + shift + f),发现pom.xml文件中定义了url,大胆猜测下我使用maven进行打包,maven中定义的url变量在jvm中使用,并且后面的会覆盖前面定义的值,导致的此问题。

修改错误

去掉pom.xml中 url 标签,重新打包后重启服务。

重启测试

总结

pom.xml与PropertyPlaceholderConfigurer变量冲突,且pom中的同名变量会覆盖spring配置文件中的变量。

记得排查配置文件、排查mybatis配置文件、排查pom.xml文件。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐