文档章节

因为org.quartz-scheduler-quartz定时任务引入版本过高导致项目启动报错问题

andotorg
 andotorg
发布于 03/14 11:09
字数 619
阅读 1080
收藏 1

具体错误信息

`o.a.tomcat.util.scan.StandardJarScanner  : Failed to scan [file:/C:/Users/ABC/.m2/repository/com/mchange/c3p0/0.9.5.2/mchange-commons-java-0.2.11.jar] from classloader hierarchy

java.io.FileNotFoundException: C:\Users\ABC.m2\repository\com\mchange\c3p0\0.9.5.2\mchange-commons-java-0.2.11.jar (The system cannot find the file specified) at java.util.zip.ZipFile.open(Native Method) ~[na:1.8.0_60] at java.util.zip.ZipFile.<init>(ZipFile.java:219) ~[na:1.8.0_60] at java.util.zip.ZipFile.<init>(ZipFile.java:149) ~[na:1.8.0_60] at java.util.jar.JarFile.<init>(JarFile.java:166) ~[na:1.8.0_60] at java.util.jar.JarFile.<init>(JarFile.java:130) ~[na:1.8.0_60] at org.apache.tomcat.util.scan.JarFileUrlJar.<init>(JarFileUrlJar.java:60) ~[tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.tomcat.util.scan.JarFactory.newInstance(JarFactory.java:49) ~[tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:338) ~[tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:288) ~[tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.jasper.servlet.TldScanner.scanJars(TldScanner.java:262) [tomcat-embed-jasper-8.5.23.jar:8.5.23] at org.apache.jasper.servlet.TldScanner.scan(TldScanner.java:104) [tomcat-embed-jasper-8.5.23.jar:8.5.23] at org.apache.jasper.servlet.JasperInitializer.onStartup(JasperInitializer.java:101) [tomcat-embed-jasper-8.5.23.jar:8.5.23] at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5196) [tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) [tomcat-embed-core-8.5.23.jar:8.5.23] at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) [tomcat-embed-core-8.5.23.jar:8.5.23] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_60] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_60]`

项目移植

原有项目Spring+SpringMVC的普通的web项目移植到SpringBoot+Maven上来,这个过程最痛苦的莫过于寻找jar包的依赖了,在寻找jar包的依赖的时候,有一个jar出现了问题。

项目启动的时候错误信息

问题原因

底层系统 用的是org.quartz-scheduler-quartz1.6.2 我在maven仓库中没有找到,后来发现maven仓库中有2.3.0,就把版本号修改了,库中还有一个1.8.6但是看到不是新版本就没有使用。 就这样移植完成之后就进行启动项目了,因为项目中使用的数据库连接池是Durid,所以项目启动报错一个c3p0的jar包找不到,我很纳闷。

查找原因

我就使用 mvn dependency:tree //查看Maven包的依赖树 查出来是org.quartz-scheduler-quartz 2.3.0强依赖c3p0的两个jar包

!]

然后我就开始看项目中原来引入的版本,然后查看其它项目引入的版本,其它项目引入的确实1.8.6,这是个很奇怪的问题,然后我就反编译1.8.6发现,1.8.6却没有强依赖c3p0

解决问题

我就决定换为1.8.6,这样得需要修改下定时器配置文件中的一个类 2.3.0升级之后更换了,1.8.6和1.6.2是一样的,这样版本更换后就可以解决这个问题了。

最后说一下总结:

jar包的版本切不可随意更换,因为不了解新版本做了哪

© 著作权归作者所有

共有 人打赏支持
andotorg

andotorg

粉丝 5
博文 12
码字总数 4737
作品 0
济南
后端工程师
私信 提问
spring +quartz maven配置

quartz做定时任务,之前使用过,但是当时没有做笔记,导致又折腾了一点时间由于使用的是spring+hibernate的项目,使用maven管理包maven配置如下: work0 0 0/12 ? class="org.springframewor...

zph-alan
2016/09/22
50
0
Spring3+Quarz实现定时任务

一、首先引入quarz所需要的jar包,如下: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>1.8.6</version> </dependency> 二、编写定时任......

薄暮凉年
2015/08/12
0
0
OA现金盘源码搭建与Quartz简单使用

一. 什么是Quartz? 简介: 定时任务调度的框架, 可以在框架中放入很多个应用程序(重点关注的是应用程序的编写) OA现金盘源码搭建QQ:2152876294 网址diguaym.com 使用场景: 闹钟 账单提醒 核心...

cbjsih
08/03
0
0
SpringBoot集成Quartz

SpringBoot集成Quartz 什么是Quartz Quartz 的优点 丰富的 Job 操作 API; 支持多种配置 Spring Boot 无缝集成; 支持持久化; 支持集群 开源 Quartz的核心概念 1.Job 表示一个工作,要执行的...

Grittan
10/18
0
0
Spring4+Springmvc+quartz实现多线程动态定时调度

scheduler定时调度系统是大多行业项目都需要的,传统的spring-job模式,个人感觉已经out了,因为存在很多的问题,特别是定时调度的追加、修改、删除等,需要修改xml,xml的配置生效无非是热部...

原野先
2017/11/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

1个开发如何撑起一个过亿用户的小程序

本文由云+社区发表 2018年12月,腾讯相册累计用户量突破1亿,月活1200万,阿拉丁指数排行 Top 30,已经成为小程序生态的重量级玩家。 三个多月来,腾讯相册围绕【在微信分享相册照片】这一核...

腾讯云加社区
14分钟前
1
0
golang ssh包使用方法介绍

在使用gexpect包发现很多问题之外,这里又尝试使用ssh user@127.0.0.1的思路进行用户切换。这里记录下具体的使用方法,遇到的ssh: must specify HostKeyCallback 问题的解法方法及最终使用过...

linuxprobe16
19分钟前
0
0
layer

Layui Layer在open弹出层中异步加载数据和form表单radio、checkbox、select不渲染,不可点击的解决办法 layer 实现弹窗提交信息 function confirmUpdateAward(i) { layer.open({ ...

mickelfeng
今天
1
0
Spring boot中如何获取profiles环境

  实现ApplicationContextAware @Componentpublic class QiNiuPropertiesConfig implements ApplicationContextAware { /// 获取当前环境public String getActiveProfile() { ret......

writeademo
今天
4
0
机器学习中的End-to-End到底是怎么回事?

简单讲就是,Input--->系统(这里指神经网络)--->Output(直接给出输入,NN神经网络就给出结果,一气喝成!!!) 借用一段对话:(http://dy.163.com/v2/article/detail/C3J6F2NJ0511AQHO....

火力全開
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部