【时间库对比分析】:选择java.time还是Joda-Time?一文看懂

立即解锁
发布时间: 2024-09-25 07:59:05 阅读量: 126 订阅数: 77 AIGC
ZIP

clojure.joda-time:Joda-Time的惯用Clojure包装器

![【时间库对比分析】:选择java.time还是Joda-Time?一文看懂](https://opengraph.githubassets.com/d97f81ddf86470a6f6ede78d57249aca929683182455fc0db88ad19b94ff7630/JodaOrg/joda-time) # 1. 时间处理在Java中的演进 Java自诞生以来,一直在其核心库中提供时间处理功能。早期版本的`java.util.Date`和`Calendar`类存在着诸多限制和不便之处,如线程安全问题和不直观的API设计,导致时间处理变得繁琐且容易出错。随着Java 8的发布,引入了全新的`java.time`包,标志着Java时间处理能力的重大演进。`java.time`提供了更加直观、灵活且线程安全的时间和日期API,其设计灵感部分源自于Joda-Time库,一个在Java 8发布前广泛使用的第三方时间处理库。 本章将带您回顾Java时间处理的发展历程,并着重介绍`java.time`库的引入,及其如何解决了之前时间API的诸多问题。我们将从`java.time`的核心概念和类开始深入,逐步探索其对时间区和时区的处理,以及它提供的附加功能,如时间间隔和时间调整器的表示。 ## 1.1 从旧到新的转变 在`java.time`库出现之前,许多Java开发者依赖于`java.util.Date`和`Calendar`类,以及`SimpleDateFormat`进行时间处理。这些类虽然满足了一部分需求,但其设计缺陷导致使用时常常遇到复杂且难以调试的bug。例如: - `java.util.Date`既表示时间点也表示日期,混淆了这两种概念。 - `Calendar`类虽然对日期和时间的表示有所改进,但其API不够直观。 - 时区的处理不够灵活和准确,且容易出现错误。 随着`java.time`库的推出,Java开发者迎来了更加健壮、灵活和易于使用的API。在`java.time`中,时间点、日期和时间分别由`Instant`、`LocalDate`和`LocalDateTime`等类来表示,每一个类都有清晰定义的职责范围。时区的处理也变得更加准确和简便,使用`ZoneId`和`ZoneOffset`类来管理时区信息。此外,`java.time`库还提供了`TemporalAdjuster`类,用于执行复杂的日期时间调整操作。 `java.time`的设计哲学是面向对象,不可变,以及线程安全,这使得它成为了处理时间问题的首选。即便如此,在实际应用中,仍需要对旧代码进行迁移和重构,以充分利用新库带来的优势。下一章,我们将深入解析`java.time`库的核心概念与类,并探讨如何在实际应用中进行时间处理。 # 2. java.time库的深入解析 java.time库是Java 8中引入的一个全新的日期和时间API,它替代了过时的java.util.Date和Calendar类。java.time库提供了一套现代、清晰且一致的API,它利用了Joda-Time的设计理念,解决了旧API中存在的许多问题。本章将深入分析java.time库的核心概念、时间区处理、附加功能等,并通过实例代码和结构化内容,向读者展示其强大和灵活的特性。 ## 2.1 java.time核心概念与类 ### 2.1.1 Instant类:时间点的表示 `Instant`类代表了一个具体的瞬间,以UTC时区的时间戳来表示。它是不可变的,并且设计为线程安全的。`Instant`类通常用于表示特定时间点的时间戳,它能够以纳秒为单位精确到毫秒。 ```java Instant instant = Instant.now(); // 获取当前时间点 long epochSecond = instant.getEpochSecond(); // 获取秒数部分 int nanoAdjustment = instant.getNano(); // 获取纳秒数部分 ``` 代码执行逻辑说明: - `Instant.now()`方法返回当前时刻的Instant对象。 - `getEpochSecond()`方法返回自1970年1月1日0时0分0秒 UTC以来的秒数。 - `getNano()`方法返回纳秒部分。 `Instant`类常用于日志记录、事件序列化和跨网络通信等场景,以便记录和传递精确的时间点。 ### 2.1.2 LocalDate类:日期的表示 `LocalDate`类用于表示没有时间和时区信息的日期,它仅包含年、月、日三个字段。此类为不可变对象,它和`LocalTime`、`LocalDateTime`一样,适用于仅涉及日期或时间的场景。 ```java LocalDate localDate = LocalDate.of(2023, Month.MARCH, 15); int year = localDate.getYear(); Month month = localDate.getMonth(); int dayOfMonth = localDate.getDayOfMonth(); ``` 代码逻辑分析: - `LocalDate.of()`方法接受年、月、日三个参数来创建`LocalDate`对象。 - `getYear()`、`getMonth()`和`getDayOfMonth()`方法分别用于获取日期的年份、月份和日。 `LocalDate`使得日期操作变得简单直观,例如日期的增加、减少、比较等操作都通过其提供的方法直接实现。 ### 2.1.3 LocalDateTime类:日期和时间的表示 `LocalDateTime`类代表没有时区信息的日期和时间。它结合了`LocalDate`和`LocalTime`的功能,非常适合于需要同时表示日期和时间的场景。 ```java LocalDateTime localDateTime = LocalDateTime.of(2023, Month.MARCH, 15, 12, 30); int hour = localDateTime.getHour(); int minute = localDateTime.getMinute(); ``` 代码逻辑分析: - `LocalDateTime.of()`方法通过指定年、月、日、时、分来创建`LocalDateTime`对象。 - `getHour()`和`getMinute()`方法分别获取`LocalDateTime`实例的小时和分钟字段。 `LocalDateTime`类提供了丰富的API,包括对日期和时间的修改,以及与日期时间格式化器`DateTimeFormatter`的配合使用,提供了强大的日期时间处理能力。 ## 2.2 java.time的时间区和时区处理 ### 2.2.1 ZoneId和ZoneOffset:时区的概念与应用 `ZoneId`类代表一个时区ID,它定义了在UTC/GMT基础上的偏移量,例如`America/New_York`或`Asia/Shanghai`。`ZoneOffset`则是一个简化的时区偏移类,它以“+hh:mm:ss”格式表示偏移量。 ```java ZoneId zoneId = ZoneId.of("America/New_York"); ZoneOffset zoneOffset = ZoneOffset.of("-05:00"); ``` 参数说明: - `ZoneId.of("America/New_York")`表示选择纽约时区。 - `ZoneOffset.of("-05:00")`表示纽约时区相对于UTC的偏移量。 `ZoneId`和`ZoneOffset`使得处理不同时区的时间变得简单,尤其是在全球化应用中,正确处理时区是避免时间混乱的关键。 ### 2.2.2 DateTimeFormatter:时间格式化器 `DateTimeFormatter`类用于时间日期的格式化和解析。它支持自定义的日期时间格式,也提供了预定义的标准格式。格式化器是线程安全的,可以在多线程环境中共享使用。 ```java DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime localDateTime = LocalDateTime.parse("2023-03-15 12:30:00", formatter); String formattedDateTime = localDateTime.format(formatter); ``` 代码逻辑分析: - `ofPattern("yyyy-MM-dd HH:mm:ss")`定义了一个日期时间格式模板。 - `LocalDateTime.parse()`方法使用该格式模板解析字符串为`LocalDateTime`对象。 - `format()`方法将`LocalDateTime`对象格式化为字符串。 `DateTimeFormatter`在处理文本表示的日期时间时尤为有用,它可以确保时间格式的一致性和准确性,特别是在国际化应用中。 ## 2.3 java.time的附加功能 ### 2.3.1 Period和Duration:时间间隔的表示 `Period`类用于表示年、月、日的间隔,而`Duration`则表示时、分、秒的间隔。它们都是时间间隔的表示方法,区别在于它们分别作用于日期和时间。 ```java LocalDate startDate = LocalDate.of(2023, Month.JANUARY, 1); LocalDate endDate = LocalDate.of(2023, Month.DECEMBER, 31); Period period = Period.between(startDate, endDate); long days = period.getDays(); ``` 代码逻辑分析: - `Period.between()`方法计算两个日期之间的间隔,返回一个`Period`对象。 - `getDays()`方法获取该日期间隔中的天数。 `Period`和`Duration`使得处理日期和时间的间隔变得简单,它们提供了加、减、获取总长度等操作方法,非常适合于日期和时间的计算。 ### 2.
corwn 最低0.47元/天 解锁专栏
买1年送3月
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

C:\Users\19954\.jdks\corretto-1.8.0_452\bin\java.exe -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-Dmanagement.endpoints.jmx.exposure.include=*" "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA 2025.1.3\lib\idea_rt.jar=53737" -Dfile.encoding=UTF-8 -classpath C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\charsets.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\access-bridge-64.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\cldrdata.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\dnsns.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\jaccess.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\jfxrt.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\localedata.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\nashorn.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\sunec.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\sunjce_provider.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\sunmscapi.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\sunpkcs11.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\ext\zipfs.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\jce.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\jfr.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\jfxswt.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\jsse.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\management-agent.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\resources.jar;C:\Users\19954\.jdks\corretto-1.8.0_452\jre\lib\rt.jar;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-admin\target\classes;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-devtools\2.5.15\spring-boot-devtools-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot\2.5.15\spring-boot-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-core\5.3.39\spring-core-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-jcl\5.3.39\spring-jcl-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-context\5.3.39\spring-context-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-expression\5.3.39\spring-expression-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-autoconfigure\2.5.15\spring-boot-autoconfigure-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-boot-starter\3.0.0\springfox-boot-starter-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-oas\3.0.0\springfox-oas-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\swagger\core\v3\swagger-annotations\2.1.2\swagger-annotations-2.1.2.jar;D:\maven\apache-maven-3.8.9\repository\io\swagger\core\v3\swagger-models\2.1.2\swagger-models-2.1.2.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-spi\3.0.0\springfox-spi-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-schema\3.0.0\springfox-schema-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-core\3.0.0\springfox-core-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\net\bytebuddy\byte-buddy\1.10.22\byte-buddy-1.10.22.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-spring-web\3.0.0\springfox-spring-web-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\github\classgraph\classgraph\4.8.83\classgraph-4.8.83.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-spring-webmvc\3.0.0\springfox-spring-webmvc-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-spring-webflux\3.0.0\springfox-spring-webflux-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-swagger-common\3.0.0\springfox-swagger-common-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\org\mapstruct\mapstruct\1.3.1.Final\mapstruct-1.3.1.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-data-rest\3.0.0\springfox-data-rest-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-bean-validators\3.0.0\springfox-bean-validators-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-swagger2\3.0.0\springfox-swagger2-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\io\springfox\springfox-swagger-ui\3.0.0\springfox-swagger-ui-3.0.0.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;D:\maven\apache-maven-3.8.9\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\plugin\spring-plugin-core\2.0.0.RELEASE\spring-plugin-core-2.0.0.RELEASE.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-beans\5.3.39\spring-beans-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-aop\5.3.39\spring-aop-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\plugin\spring-plugin-metadata\2.0.0.RELEASE\spring-plugin-metadata-2.0.0.RELEASE.jar;D:\maven\apache-maven-3.8.9\repository\io\swagger\swagger-models\1.6.2\swagger-models-1.6.2.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\core\jackson-annotations\2.12.7\jackson-annotations-2.12.7.jar;D:\maven\apache-maven-3.8.9\repository\io\swagger\swagger-annotations\1.6.2\swagger-annotations-1.6.2.jar;D:\maven\apache-maven-3.8.9\repository\com\mysql\mysql-connector-j\8.0.33\mysql-connector-j-8.0.33.jar;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-framework\target\classes;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-web\2.5.15\spring-boot-starter-web-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter\2.5.15\spring-boot-starter-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-logging\2.5.15\spring-boot-starter-logging-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\ch\qos\logback\logback-classic\1.2.13\logback-classic-1.2.13.jar;D:\maven\apache-maven-3.8.9\repository\ch\qos\logback\logback-core\1.2.13\logback-core-1.2.13.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;D:\maven\apache-maven-3.8.9\repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;D:\maven\apache-maven-3.8.9\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-json\2.5.15\spring-boot-starter-json-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.12.7\jackson-datatype-jdk8-2.12.7.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.12.7\jackson-datatype-jsr310-2.12.7.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.12.7\jackson-module-parameter-names-2.12.7.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-tomcat\2.5.15\spring-boot-starter-tomcat-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.106\tomcat-embed-core-9.0.106.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.106\tomcat-embed-el-9.0.106.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.106\tomcat-embed-websocket-9.0.106.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-web\5.3.39\spring-web-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-webmvc\5.3.39\spring-webmvc-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-aop\2.5.15\spring-boot-starter-aop-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\druid-spring-boot-starter\1.2.23\druid-spring-boot-starter-1.2.23.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\druid\1.2.23\druid-1.2.23.jar;D:\maven\apache-maven-3.8.9\repository\org\glassfish\jaxb\jaxb-runtime\2.3.8\jaxb-runtime-2.3.8.jar;D:\maven\apache-maven-3.8.9\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;D:\maven\apache-maven-3.8.9\repository\org\glassfish\jaxb\txw2\2.3.8\txw2-2.3.8.jar;D:\maven\apache-maven-3.8.9\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;D:\maven\apache-maven-3.8.9\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;D:\maven\apache-maven-3.8.9\repository\pro\fessional\kaptcha\2.3.3\kaptcha-2.3.3.jar;D:\maven\apache-maven-3.8.9\repository\com\jhlabs\filters\2.0.235-1\filters-2.0.235-1.jar;D:\maven\apache-maven-3.8.9\repository\com\github\oshi\oshi-core\6.8.2\oshi-core-6.8.2.jar;D:\maven\apache-maven-3.8.9\repository\net\java\dev\jna\jna\5.17.0\jna-5.17.0.jar;D:\maven\apache-maven-3.8.9\repository\net\java\dev\jna\jna-platform\5.17.0\jna-platform-5.17.0.jar;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-system\target\classes;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-quartz\target\classes;D:\maven\apache-maven-3.8.9\repository\org\quartz-scheduler\quartz\2.3.2\quartz-2.3.2.jar;D:\maven\apache-maven-3.8.9\repository\com\mchange\mchange-commons-java\0.2.15\mchange-commons-java-0.2.15.jar;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-common\target\classes;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-context-support\5.3.39\spring-context-support-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-security\2.5.15\spring-boot-starter-security-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\security\spring-security-config\5.7.12\spring-security-config-5.7.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\security\spring-security-core\5.7.12\spring-security-core-5.7.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\security\spring-security-crypto\5.7.12\spring-security-crypto-5.7.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\security\spring-security-web\5.7.12\spring-security-web-5.7.12.jar;D:\maven\apache-maven-3.8.9\repository\com\github\pagehelper\pagehelper-spring-boot-starter\1.4.7\pagehelper-spring-boot-starter-1.4.7.jar;D:\maven\apache-maven-3.8.9\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter\2.3.1\mybatis-spring-boot-starter-2.3.1.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-jdbc\2.5.15\spring-boot-starter-jdbc-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-jdbc\5.3.39\spring-jdbc-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\mybatis\spring\boot\mybatis-spring-boot-autoconfigure\2.3.1\mybatis-spring-boot-autoconfigure-2.3.1.jar;D:\maven\apache-maven-3.8.9\repository\org\mybatis\mybatis\3.5.13\mybatis-3.5.13.jar;D:\maven\apache-maven-3.8.9\repository\org\mybatis\mybatis-spring\2.1.1\mybatis-spring-2.1.1.jar;D:\maven\apache-maven-3.8.9\repository\com\github\pagehelper\pagehelper-spring-boot-autoconfigure\1.4.7\pagehelper-spring-boot-autoconfigure-1.4.7.jar;D:\maven\apache-maven-3.8.9\repository\com\github\pagehelper\pagehelper\5.3.3\pagehelper-5.3.3.jar;D:\maven\apache-maven-3.8.9\repository\com\github\jsqlparser\jsqlparser\4.5\jsqlparser-4.5.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-validation\2.5.15\spring-boot-starter-validation-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\hibernate\validator\hibernate-validator\6.2.5.Final\hibernate-validator-6.2.5.Final.jar;D:\maven\apache-maven-3.8.9\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;D:\maven\apache-maven-3.8.9\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\core\jackson-databind\2.12.7.1\jackson-databind-2.12.7.1.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\jackson\core\jackson-core\2.12.7\jackson-core-2.12.7.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\fastjson2\fastjson2\2.0.57\fastjson2-2.0.57.jar;D:\maven\apache-maven-3.8.9\repository\commons-io\commons-io\2.19.0\commons-io-2.19.0.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\poi\poi-ooxml\4.1.2\poi-ooxml-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\poi\poi\4.1.2\poi-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\commons\commons-collections4\4.4\commons-collections4-4.4.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\commons\commons-math3\3.6.1\commons-math3-3.6.1.jar;D:\maven\apache-maven-3.8.9\repository\com\zaxxer\SparseBitSet\1.2\SparseBitSet-1.2.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\poi\poi-ooxml-schemas\4.1.2\poi-ooxml-schemas-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\xmlbeans\xmlbeans\3.1.0\xmlbeans-3.1.0.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\commons\commons-compress\1.19\commons-compress-1.19.jar;D:\maven\apache-maven-3.8.9\repository\com\github\virtuald\curvesapi\1.06\curvesapi-1.06.jar;D:\maven\apache-maven-3.8.9\repository\org\yaml\snakeyaml\1.28\snakeyaml-1.28.jar;D:\maven\apache-maven-3.8.9\repository\io\jsonwebtoken\jjwt\0.9.1\jjwt-0.9.1.jar;D:\maven\apache-maven-3.8.9\repository\javax\xml\bind\jaxb-api\2.3.1\jaxb-api-2.3.1.jar;D:\maven\apache-maven-3.8.9\repository\javax\activation\javax.activation-api\1.2.0\javax.activation-api-1.2.0.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\boot\spring-boot-starter-data-redis\2.5.15\spring-boot-starter-data-redis-2.5.15.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\data\spring-data-redis\2.5.12\spring-data-redis-2.5.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\data\spring-data-keyvalue\2.5.12\spring-data-keyvalue-2.5.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\data\spring-data-commons\2.5.12\spring-data-commons-2.5.12.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-tx\5.3.39\spring-tx-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-oxm\5.3.39\spring-oxm-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\io\lettuce\lettuce-core\6.1.10.RELEASE\lettuce-core-6.1.10.RELEASE.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-common\4.1.92.Final\netty-common-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-handler\4.1.92.Final\netty-handler-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-resolver\4.1.92.Final\netty-resolver-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-buffer\4.1.92.Final\netty-buffer-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-transport-native-unix-common\4.1.92.Final\netty-transport-native-unix-common-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-codec\4.1.92.Final\netty-codec-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\netty\netty-transport\4.1.92.Final\netty-transport-4.1.92.Final.jar;D:\maven\apache-maven-3.8.9\repository\io\projectreactor\reactor-core\3.4.29\reactor-core-3.4.29.jar;D:\maven\apache-maven-3.8.9\repository\org\reactivestreams\reactive-streams\1.0.4\reactive-streams-1.0.4.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\commons\commons-pool2\2.9.0\commons-pool2-2.9.0.jar;D:\maven\apache-maven-3.8.9\repository\eu\bitwalker\UserAgentUtils\1.21\UserAgentUtils-1.21.jar;D:\maven\apache-maven-3.8.9\repository\javax\servlet\javax.servlet-api\4.0.1\javax.servlet-api-4.0.1.jar;D:\maven\apache-maven-3.8.9\repository\io\github\mrtylerzhou\antflow-spring-boot-starter\1.1.1\antflow-spring-boot-starter-1.1.1.jar;D:\maven\apache-maven-3.8.9\repository\io\github\mrtylerzhou\antflow-base\1.1.1\antflow-base-1.1.1.jar;D:\maven\apache-maven-3.8.9\repository\io\github\mrtylerzhou\antflow-common\1.1.1\antflow-common-1.1.1.jar;D:\maven\apache-maven-3.8.9\repository\io\github\mrtylerzhou\antflow-engine\1.1.1\antflow-engine-1.1.1.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-util\6.0.0\jodd-util-6.0.0.jar;D:\maven\apache-maven-3.8.9\repository\com\baomidou\mybatis-plus-boot-starter\3.5.1\mybatis-plus-boot-starter-3.5.1.jar;D:\maven\apache-maven-3.8.9\repository\com\baomidou\mybatis-plus\3.5.1\mybatis-plus-3.5.1.jar;D:\maven\apache-maven-3.8.9\repository\org\jgroups\jgroups\4.2.30.Final\jgroups-4.2.30.Final.jar;D:\maven\apache-maven-3.8.9\repository\com\belerweb\pinyin4j\2.5.0\pinyin4j-2.5.0.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\fastjson2\fastjson2-extension\2.0.53\fastjson2-extension-2.0.53.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\fastjson2\fastjson2-extension-spring5\2.0.53\fastjson2-extension-spring5-2.0.53.jar;D:\maven\apache-maven-3.8.9\repository\org\springframework\spring-aspects\5.3.39\spring-aspects-5.3.39.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-core\5.3.0\jodd-core-5.3.0.jar;D:\maven\apache-maven-3.8.9\repository\joda-time\joda-time\2.9.9\joda-time-2.9.9.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-servlet\4.1.2\jodd-servlet-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-upload\4.1.2\jodd-upload-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-mail\5.1.6\jodd-mail-5.1.6.jar;D:\maven\apache-maven-3.8.9\repository\jakarta\mail\jakarta.mail-api\1.6.7\jakarta.mail-api-1.6.7.jar;D:\maven\apache-maven-3.8.9\repository\com\sun\mail\jakarta.mail\1.6.7\jakarta.mail-1.6.7.jar;D:\maven\apache-maven-3.8.9\repository\org\jodd\jodd-bean\4.1.2\jodd-bean-4.1.2.jar;D:\maven\apache-maven-3.8.9\repository\com\github\vlsi\mxgraph\jgraphx\4.2.2\jgraphx-4.2.2.jar;D:\maven\apache-maven-3.8.9\repository\com\baomidou\mybatis-plus-extension\3.5.1\mybatis-plus-extension-3.5.1.jar;D:\maven\apache-maven-3.8.9\repository\com\baomidou\mybatis-plus-core\3.5.1\mybatis-plus-core-3.5.1.jar;D:\maven\apache-maven-3.8.9\repository\com\baomidou\mybatis-plus-annotation\3.5.1\mybatis-plus-annotation-3.5.1.jar;D:\maven\apache-maven-3.8.9\repository\com\alibaba\transmittable-thread-local\2.12.6\transmittable-thread-local-2.12.6.jar;D:\maven\apache-maven-3.8.9\repository\javax\enterprise\concurrent\javax.enterprise.concurrent-api\1.0\javax.enterprise.concurrent-api-1.0.jar;D:\maven\apache-maven-3.8.9\repository\org\drools\drools-core\6.5.0.Final\drools-core-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\mvel\mvel2\2.2.8.Final\mvel2-2.2.8.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\kie\kie-api\6.5.0.Final\kie-api-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\kie\kie-internal\6.5.0.Final\kie-internal-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\drools\drools-compiler\6.5.0.Final\drools-compiler-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\antlr\antlr-runtime\3.5\antlr-runtime-3.5.jar;D:\maven\apache-maven-3.8.9\repository\org\eclipse\jdt\core\compiler\ecj\4.4.2\ecj-4.4.2.jar;D:\maven\apache-maven-3.8.9\repository\com\thoughtworks\xstream\xstream\1.4.9\xstream-1.4.9.jar;D:\maven\apache-maven-3.8.9\repository\xmlpull\xmlpull\1.1.3.1\xmlpull-1.1.3.1.jar;D:\maven\apache-maven-3.8.9\repository\xpp3\xpp3_min\1.1.4c\xpp3_min-1.1.4c.jar;D:\maven\apache-maven-3.8.9\repository\com\google\protobuf\protobuf-java\2.6.0\protobuf-java-2.6.0.jar;D:\maven\apache-maven-3.8.9\repository\org\drools\knowledge-api\6.5.0.Final\knowledge-api-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\drools\drools-reteoo\6.5.0.Final\drools-reteoo-6.5.0.Final.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\geronimo\specs\geronimo-jta_1.1_spec\1.1.1\geronimo-jta_1.1_spec-1.1.1.jar;D:\maven\apache-maven-3.8.9\repository\com\fasterxml\uuid\java-uuid-generator\3.1.4\java-uuid-generator-3.1.4.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\httpcomponents\httpclient\4.5.14\httpclient-4.5.14.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\httpcomponents\httpcore\4.4.16\httpcore-4.4.16.jar;D:\maven\apache-maven-3.8.9\repository\org\apache\httpcomponents\httpmime\4.5.14\httpmime-4.5.14.jar;D:\maven\apache-maven-3.8.9\repository\com\google\guava\guava\31.0.1-jre\guava-31.0.1-jre.jar;D:\maven\apache-maven-3.8.9\repository\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;D:\maven\apache-maven-3.8.9\repository\com\google\guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar;D:\maven\apache-maven-3.8.9\repository\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;D:\maven\apache-maven-3.8.9\repository\org\checkerframework\checker-qual\3.12.0\checker-qual-3.12.0.jar;D:\maven\apache-maven-3.8.9\repository\com\google\errorprone\error_prone_annotations\2.7.1\error_prone_annotations-2.7.1.jar;D:\maven\apache-maven-3.8.9\repository\com\google\j2objc\j2objc-annotations\1.3\j2objc-annotations-1.3.jar;F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-generator\target\classes;D:\maven\apache-maven-3.8.9\repository\org\apache\velocity\velocity-engine-core\2.3\velocity-engine-core-2.3.jar;D:\maven\apache-maven-3.8.9\repository\org\projectlombok\lombok\1.18.26\lombok-1.18.26.jar com.ruoyi.RuoYiApplication Application Version: 3.9.0 Spring Boot Version: 2.5.15 //////////////////////////////////////////////////////////////////////////////// || || || .= || || ..===. || || .====.. || || .=====. || || .:. .======. .. || || ++++.. .======. ..====.. || || .++++++... .======. .======. || || ++ ..++++++++. .======. .========.. == || || ++++ .++++++++. .=====. .=======. ==== || || ..#*******.... ..=++++++. .====. ..======.. ....-=======.. || || ..***********.. .+++++.. ===. ======. .============. || || ..-************#. .+++...= .====. ...=============. || || || || Grace be with you. May your code be clean. || || || || "Let all that you do be done in love." || || — 1 faithful Corinthians || || || || May your app start smooth and log no errors. || || || //////////////////////////////////////////////////////////////////////////////// 08:58:00.921 [restartedMain] INFO c.r.RuoYiApplication - [logStarting,55] - Starting RuoYiApplication using Java 1.8.0_452 on DESKTOP-NNMOV4B with PID 21608 (F:\oa_ma\BPM_1\ruoyimate-master\ruoyi-admin\target\classes started by 19954 in F:\oa_ma\BPM_1\ruoyimate-master) 08:58:00.925 [restartedMain] DEBUG c.r.RuoYiApplication - [logStarting,56] - Running with Spring Boot v2.5.15, Spring v5.3.39 08:58:00.926 [restartedMain] INFO c.r.RuoYiApplication - [logStartupProfileInfo,686] - The following 1 profile is active: "druid" 08:58:00.930 [background-preinit] INFO o.h.v.i.util.Version - [<clinit>,21] - HV000001: Hibernate Validator 6.2.5.Final 08:58:04.491 [restartedMain] INFO o.a.c.h.Http11NioProtocol - [log,168] - Initializing ProtocolHandler ["http-nio-7002"] 08:58:04.493 [restartedMain] INFO o.a.c.c.StandardService - [log,168] - Starting service [Tomcat] 08:58:04.493 [restartedMain] INFO o.a.c.c.StandardEngine - [log,168] - Starting Servlet engine: [Apache Tomcat/9.0.106] 08:58:04.510 [restartedMain] WARN o.a.c.w.DirResourceSet - [log,168] - Disabled the global canonical file name cache to protect against CVE-2024-56337 when starting the WebResourceSet at [C:\Users\19954\AppData\Local\Temp\tomcat-docbase.7002.961829622970463255] which is part of the web application [] 08:58:04.624 [restartedMain] INFO o.a.c.c.C.[.[.[/] - [log,168] - Initializing Spring embedded WebApplicationContext 08:58:05.239 [restartedMain] INFO c.a.d.p.DruidDataSource - [init,1002] - {dataSource-1} inited 08:58:06.857 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.RoleMapper.queryRoleByIds] is ignored, because it exists, maybe from xml file 08:58:06.858 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.RoleMapper.queryUserByRoleIds] is ignored, because it exists, maybe from xml file 08:58:06.858 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.RoleMapper.selectAll] is ignored, because it exists, maybe from xml file 08:58:06.963 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.queryCompanyByNameFuzzy] is ignored, because it exists, maybe from xml file 08:58:06.964 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.queryByNameFuzzy] is ignored, because it exists, maybe from xml file 08:58:06.964 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.queryByIds] is ignored, because it exists, maybe from xml file 08:58:06.964 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.checkEmployeeEffective] is ignored, because it exists, maybe from xml file 08:58:06.965 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getLevelLeadersByEmployeeIdAndTier] is ignored, because it exists, maybe from xml file 08:58:06.965 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getHrpbByEmployeeId] is ignored, because it exists, maybe from xml file 08:58:06.966 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getDirectLeaderByEmployeeId] is ignored, because it exists, maybe from xml file 08:58:06.966 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.selectAll] is ignored, because it exists, maybe from xml file 08:58:06.966 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.selectUserPageList] is ignored, because it exists, maybe from xml file 08:58:06.967 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getLeaderByLeventDepartment] is ignored, because it exists, maybe from xml file 08:58:06.967 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getLevelLeadersByEmployeeIdAndEndGrade] is ignored, because it exists, maybe from xml file 08:58:06.967 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getEmployeeDetailById] is ignored, because it exists, maybe from xml file 08:58:06.967 [restartedMain] ERROR c.b.m.c.MybatisConfiguration - [addMappedStatement,107] - mapper[org.openoa.base.mapper.UserMapper.getEmployeeDetailByIds] is ignored, because it exists, maybe from xml file _ _ |_ _ _|_. ___ _ | _ | | |\/|_)(_| | |_\ |_)||_|_\ / | 3.5.1 08:58:08.367 [restartedMain] DEBUG c.r.f.s.f.JwtAuthenticationTokenFilter - [init,242] - Filter 'jwtAuthenticationTokenFilter' configured for use 08:58:08.571 [restartedMain] DEBUG c.r.s.m.S.selectConfigList - [debug,135] - ==> Preparing: select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark from sys_config 08:58:08.681 [restartedMain] DEBUG c.r.s.m.S.selectConfigList - [debug,135] - ==> Parameters: 08:58:08.697 [restartedMain] DEBUG c.r.s.m.S.selectConfigList - [debug,135] - <== Total: 8 08:58:09.389 [restartedMain] DEBUG c.r.s.m.S.selectDictDataList - [debug,135] - ==> Preparing: select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark from sys_dict_data WHERE status = ? order by dict_sort asc 08:58:09.397 [restartedMain] DEBUG c.r.s.m.S.selectDictDataList - [debug,135] - ==> Parameters: 0(String) 08:58:09.408 [restartedMain] DEBUG c.r.s.m.S.selectDictDataList - [debug,135] - <== Total: 29 08:58:09.954 [restartedMain] INFO o.q.i.StdSchedulerFactory - [instantiate,1220] - Using default implementation for ThreadExecutor 08:58:09.968 [restartedMain] INFO o.q.c.SchedulerSignalerImpl - [<init>,61] - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl 08:58:09.968 [restartedMain] INFO o.q.c.QuartzScheduler - [<init>,229] - Quartz Scheduler v.2.3.2 created. 08:58:09.969 [restartedMain] INFO o.q.s.RAMJobStore - [initialize,155] - RAMJobStore initialized. 08:58:09.970 [restartedMain] INFO o.q.c.QuartzScheduler - [initialize,294] - Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. Number of jobs executed: 0 Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. 08:58:09.970 [restartedMain] INFO o.q.i.StdSchedulerFactory - [instantiate,1374] - Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. 08:58:09.970 [restartedMain] INFO o.q.i.StdSchedulerFactory - [instantiate,1378] - Quartz scheduler version: 2.3.2 08:58:09.971 [restartedMain] INFO o.q.c.QuartzScheduler - [setJobFactory,2293] - JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@29458bd 08:58:10.004 [restartedMain] DEBUG c.r.q.m.S.selectJobAll - [debug,135] - ==> Preparing: select job_id, job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark from sys_job 08:58:10.004 [restartedMain] DEBUG c.r.q.m.S.selectJobAll - [debug,135] - ==> Parameters: 08:58:10.009 [restartedMain] DEBUG c.r.q.m.S.selectJobAll - [debug,135] - <== Total: 3 08:58:11.568 [restartedMain] INFO o.a.e.i.ProcessEngineImpl - [<init>,86] - ProcessEngine default created 08:58:11.571 [restartedMain] INFO o.o.e.b.a.BpmnGlobalEventListener - [onEvent,45] - AntFlow Engine is started 08:58:11.571 [restartedMain] INFO o.a.e.i.c.m.MultiSchemaMultiTenantProcessEngineConfiguration - [createTenantSchema,160] - creating/validating database schema for tenant default 08:58:11.583 [restartedMain] ERROR o.a.e.i.i.CommandContext - [close,171] - Error while closing command context org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:922) at org.activiti.engine.impl.cfg.multitenant.ExecuteSchemaOperationCommand.execute(ExecuteSchemaOperationCommand.java:51) at org.activiti.engine.impl.cfg.multitenant.ExecuteSchemaOperationCommand.execute(ExecuteSchemaOperationCommand.java:27) at org.activiti.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:24) at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:57) at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:31) at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:40) at org.activiti.engine.impl.cfg.multitenant.MultiSchemaMultiTenantProcessEngineConfiguration.createTenantSchema(MultiSchemaMultiTenantProcessEngineConfiguration.java:162) at org.activiti.engine.impl.cfg.multitenant.MultiSchemaMultiTenantProcessEngineConfiguration.buildProcessEngine(MultiSchemaMultiTenantProcessEngineConfiguration.java:147) at org.activiti.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:60) at org.activiti.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:32) at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:169) at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101) at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1899) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1284) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:268) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1616) at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1354) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:401) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:780) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:453) at org.springframework.boot.SpringApplication.run(SpringApplication.java:343) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1370) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1359) at com.ruoyi.RuoYiApplication.main(RuoYiApplication.java:18) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) 08:58:11.592 [restartedMain] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - [refresh,599] - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'antFlowOperationListener': Unsatisfied dependency expressed through field 'variableMessageBizService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bpmVariableMessageBizServiceImpl': Unsatisfied dependency expressed through field 'processBusinessContans'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'processBusinessContans': Unsatisfied dependency expressed through field 'repositoryService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'activitiServiceBean': Unsatisfied dependency expressed through field 'processEngine'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation 08:58:11.593 [restartedMain] INFO o.q.c.QuartzScheduler - [shutdown,666] - Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. 08:58:11.593 [restartedMain] INFO o.q.c.QuartzScheduler - [standby,585] - Scheduler quartzScheduler_$_NON_CLUSTERED paused. 08:58:11.593 [restartedMain] INFO o.q.c.QuartzScheduler - [shutdown,740] - Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. 08:58:11.595 [restartedMain] INFO sys-user - [shutdownAsyncManager,31] - ====关闭后台任务任务线程池==== 08:58:11.596 [restartedMain] WARN o.s.c.a.CommonAnnotationBeanPostProcessor - [postProcessBeforeDestruction,185] - Destroy method on bean with name 'shutdownManager' threw an exception: java.lang.ExceptionInInitializerError 08:58:11.731 [restartedMain] INFO c.a.d.p.DruidDataSource - [close,2204] - {dataSource-1} closing ... 08:58:11.736 [restartedMain] INFO c.a.d.p.DruidDataSource - [close,2277] - {dataSource-1} closed 08:58:11.737 [restartedMain] INFO o.a.c.c.StandardService - [log,168] - Stopping service [Tomcat] 08:58:11.770 [restartedMain] ERROR o.s.b.SpringApplication - [reportFailure,870] - Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'antFlowOperationListener': Unsatisfied dependency expressed through field 'variableMessageBizService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bpmVariableMessageBizServiceImpl': Unsatisfied dependency expressed through field 'processBusinessContans'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'processBusinessContans': Unsatisfied dependency expressed through field 'repositoryService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'activitiServiceBean': Unsatisfied dependency expressed through field 'processEngine'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:780) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:453) at org.springframework.boot.SpringApplication.run(SpringApplication.java:343) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1370) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1359) at com.ruoyi.RuoYiApplication.main(RuoYiApplication.java:18) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bpmVariableMessageBizServiceImpl': Unsatisfied dependency expressed through field 'processBusinessContans'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'processBusinessContans': Unsatisfied dependency expressed through field 'repositoryService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'activitiServiceBean': Unsatisfied dependency expressed through field 'processEngine'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) ... 25 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'processBusinessContans': Unsatisfied dependency expressed through field 'repositoryService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'activitiServiceBean': Unsatisfied dependency expressed through field 'processEngine'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) ... 39 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'activitiServiceBean': Unsatisfied dependency expressed through field 'processEngine'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:401) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) ... 53 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngineFactoryBean': FactoryBean threw exception on object creation; nested exception is org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:176) at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101) at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1899) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1284) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:268) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1616) at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1573) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1354) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710) ... 76 common frames omitted Caused by: org.activiti.engine.ActivitiWrongDbException: version mismatch: activiti library version is '5.23.0.0', db version is null Hint: Set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:922) at org.activiti.engine.impl.cfg.multitenant.ExecuteSchemaOperationCommand.execute(ExecuteSchemaOperationCommand.java:51) at org.activiti.engine.impl.cfg.multitenant.ExecuteSchemaOperationCommand.execute(ExecuteSchemaOperationCommand.java:27) at org.activiti.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:24) at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:57) at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:31) at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:40) at org.activiti.engine.impl.cfg.multitenant.MultiSchemaMultiTenantProcessEngineConfiguration.createTenantSchema(MultiSchemaMultiTenantProcessEngineConfiguration.java:162) at org.activiti.engine.impl.cfg.multitenant.MultiSchemaMultiTenantProcessEngineConfiguration.buildProcessEngine(MultiSchemaMultiTenantProcessEngineConfiguration.java:147) at org.activiti.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:60) at org.activiti.spring.ProcessEngineFactoryBean.getObject(ProcessEngineFactoryBean.java:32) at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:169) ... 87 common frames omitted 进程已结束,退出代码为 1 怎么解决

SW_孙维

开发技术专家
知名科技公司工程师,开发技术领域拥有丰富的工作经验和专业知识。曾负责设计和开发多个复杂的软件系统,涉及到大规模数据处理、分布式系统和高性能计算等方面。
最低0.47元/天 解锁专栏
买1年送3月
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看
专栏简介
《java.time库入门介绍与使用》专栏深入剖析了java.time库,这是Java 8中引入的革命性日期时间API。该专栏涵盖了从java.util.Date到java.time库的演进,以及LocalDate、LocalDateTime和ZonedDateTime等核心类的使用技巧。它还探讨了时间戳转换、日期时间格式自定义、时区管理、日期时间算术、线程安全最佳实践和Spring框架中的应用。此外,该专栏还提供了在金融行业、分布式系统、大数据处理、物联网和游戏开发中使用java.time的专业知识,以及跨时区时间数据协调和大量日期时间数据处理的策略。
立即解锁

专栏目录

最新推荐

应对中证500调仓冲击的量化策略:高频再平衡算法设计思路与实操建议

# 摘要 本文系统研究中证500指数调仓机制对量化策略设计与执行的影响,结合市场微观结构特征构建高频再平衡策略模型。通过分析调仓周期、成分股变动规律及市场反应统计特性,建立以动态权重调整为核心、融合风险控制因子的数学优化框架,并设计完整的回测体系评估策略绩效。在工程层面,实现涵盖实时数据处理、算法交易引擎与多维度风险控制的自动化系统。进一步提出冲击成本管理、多因子增强及强化学习优化路径,探索跨市场联动策略的应用前景。最后讨论策略实施中的合规要求与未来发展趋势,为量化投资实践提供理论支持与操作指南。 # 关键字 中证500;调仓机制;高频再平衡;算法交易;风险控制;强化学习 参考

兼容性根因定位实录:不同厂商LPDDR4模组SPD差异引发开机异常的8种排查方法

![兼容性根因定位实录:不同厂商LPDDR4模组SPD差异引发开机异常的8种排查方法](https://www.androidauthority.com/wp-content/uploads/2015/04/LPDDR4-feature-comparison.jpg) # 摘要 本文围绕LPDDR4内存模组及其SPD信息展开,系统分析了内存兼容性问题的成因与排查方法。重点探讨了SPD在内存识别与BIOS初始化过程中的关键作用,以及不同厂商SPD实现差异对系统启动稳定性的影响。通过介绍SPD数据比对、BIOS日志分析、兼容性测试环境搭建等方法,本文提出了针对SPD差异导致开机异常的八种排查

从采集到智能分析:ADS-B航空大数据完整路径全解读

![ADS-B](https://m.media-amazon.com/images/I/51mRWNGJWAL._AC_UF1000,1000_QL80_.jpg) # 摘要 本文系统研究了ADS-B航空数据从采集到智能应用的全流程技术架构与关键方法。首先阐述ADS-B基本原理与系统组成,进而深入探讨基于SDR的信号接收、数据解码与预处理技术,提出针对信号干扰、丢包及时间不同步等问题的优化策略。在数据管理方面,对比时序数据库选型并构建基于Kafka与Flink的实时处理流水线,实现高效存储与流式计算。进一步地,结合卡尔曼滤波、LSTM等算法开展航迹重建、飞行行为分析与轨迹预测,并建立空

双目视觉系统性能评估体系构建:重投影误差、视差精度与点云密度指标解析

![202项目MATLAB程序(标注).zip_matlab 项目_matlab双目视觉_nearestxoq_双目视觉_视觉 标定](https://img-blog.csdn.net/20171017104908142?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2FuZ3Vvd2E=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast) # 摘要 双目视觉系统的性能评估是确保其在实际应用中可靠运行的关键环节。本文系统阐述了重投影误差、视差

KMGD6001BM-B421输出电压灵活调节技巧:满足多样化供电需求

# 摘要 KMGD6001BM-B421是一款高性能电源管理芯片,广泛应用于多场景供电系统中。本文系统阐述了该芯片的电压调节机制,基于反馈环路、参考电压源及电阻网络构建可调输出的数学模型,并分析动态负载下环路带宽与补偿设计对响应特性的影响。针对实际应用,提出了固定输出、电位器调节及数字远程控制三种配置方法,结合PCB布局与抗干扰措施提升稳定性。进一步探讨其在多路负载匹配、节能运行及极端环境下的优化策略,并通过典型项目案例验证其可靠性与适应性,为电源系统设计提供理论支持与实践指导。 # 关键字 KMGD6001BM-B421;电压调节;反馈环路;动态负载响应;补偿网络;自适应电压调

功耗估算与调优策略:低功耗FPGA游戏系统的5项优化实践

![FPGA贪食蛇游戏](https://projectfpga.com/images/vga9.jpg) # 摘要 本文针对低功耗FPGA游戏系统的设计与优化展开系统性研究,首先分析FPGA的功耗构成,建立基于静态与动态功耗的估算模型,并利用Xilinx Power Estimator等工具实现精准功耗预测。随后从架构级、RTL级到布局布线阶段提出多层次低功耗优化策略,涵盖状态机编码、时钟门控、资源合并等关键技术。结合游戏系统实际案例,验证了在引擎控制、图形渲染与外设通信等模块中应用休眠机制、动态调节与协议优化的有效性。最后通过构建测试平台进行功耗测量与性能评估,结果表明所采用的优化方

Django MTV模式深度解析:构建可扩展网上商城的5个专业级代码设计原则

![Django MTV模式深度解析:构建可扩展网上商城的5个专业级代码设计原则](https://www.askpython.com/wp-content/uploads/2020/07/Django-Models-1024x546.png.webp) # 摘要 本文系统探讨了Django MTV架构在复杂Web应用中的专业级设计与工程实践,围绕模型、视图与模板三层的职责分离与协同机制,提出模块化、可扩展的代码组织方案。通过分析高内聚低耦合的应用切分策略、配置管理机制及RESTful接口契约设计,强化系统的可维护性与可演进性。结合查询优化、缓存分层、日志规范等性能调优手段,提升系统响应

HackBar 2.1.3源码结构分析:Firefox插件逆向工程全流程揭秘(含3个关键技术点)

![HackBar 2.1.3源码结构分析:Firefox插件逆向工程全流程揭秘(含3个关键技术点)](https://extensionworkshop.com/assets/img/documentation/develop/sidebar_script_in_debugger.17fe90e1.png) # 摘要 HackBar 2.1.3是一款广泛应用于Web安全测试的Firefox浏览器插件,其功能强大且高度集成,但源码闭塞增加了安全审计与功能扩展的难度。本文系统阐述了Firefox插件架构及HackBar的运行机制,通过逆向工程手段对其源码结构进行深度解析,重点分析了核心功能

【GeckoFX表单自动填充】:实现自动登录与数据提交的全流程编码实战(效率提升利器)

# 摘要 本文围绕GeckoFX表单自动填充技术展开系统研究,深入分析其核心原理与浏览器交互机制,涵盖框架架构、DOM操作、表单识别与数据注入逻辑,以及JavaScript事件模拟等关键环节。文章详细阐述了GeckoFX开发环境的搭建流程与基础功能实现方法,并进一步探讨了登录验证、多网站适配、配置模板化等高级功能的设计与实现策略。同时,本文提出了完善的异常处理与日志反馈机制,以提升系统的稳定性和用户体验。通过实际应用场景的验证,本文总结了GeckoFX在自动填充领域的优势与优化方向,为相关自动化工具的开发与应用提供了理论支持与实践指导。 # 关键字 GeckoFX;表单自动填充;D

代码化配方管理新实践:LabVIEW与Git集成开发全流程指南

![代码化配方管理新实践:LabVIEW与Git集成开发全流程指南](https://resources.jetbrains.com/help/img/idea/2024.1/tagged_commit.png) # 摘要 随着工业自动化系统复杂度的提升,代码化配方管理成为提升开发效率与系统可维护性的关键手段。本文围绕LabVIEW平台,探讨其与Git版本控制系统的深度集成方法,解决传统开发中因缺乏规范导致的版本混乱问题。通过分析LabVIEW项目结构特性与Git对二进制文件的支持机制,提出适用于LabVIEW环境的目录规范、分支策略及协同开发流程。结合持续集成工具实现自动化构建与测试,