依赖:
<!-- Swagger2 核心依赖 --> <!--<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.10.5</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.10.5</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>30.1.1-jre</version> </dependency>--> <!-- swagger-bootstrap-ui增强ui --> <!--<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.6</version> </dependency>--> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>3.0.3</version> </dependency>
package com.example.demo.config; import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; /******************************************************************************************* * 类描述: * * @author: Administrator * @date: 2022/4/5 15:27 * @date: 2022年04月05日 15:27 * demo * @version 1.0 * * * Version Date ModifiedBy Content * -------- --------- ---------- ------------------------ * 1.0 2022/4/5 15:27 * @Copyright: 2022 www.glywzn.cn Inc. All rights reserved.. * @attention: 本内容仅限于xxxx内部传阅,禁止外泄以及用于其他的商业目的 ******************************************************************************************* */ @EnableKnife4j @Configuration public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("SpringBoot利用Swagger构建API文档") .description("使用RestFul风格, 创建人:Yimi126") .termsOfServiceUrl("https://blog.csdn.net/lubiancongzi?type=blog") .version("version 1.0") .build(); } }
"C:\Program Files\Java\jdk1.8.0_191\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -javaagent:E:\idea2021\ideaIU-2020.3.2.win\lib\idea_rt.jar=55966:E:\idea2021\ideaIU-2020.3.2.win\bin -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_191\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_191\jre\lib\rt.jar;E:\gitee2020110\demo-learning\demo-learning-fastdfs1265\target\classes;D:\maven\repository\org\springframework\boot\spring-boot-starter-web\2.6.6\spring-boot-starter-web-2.6.6.jar;D:\maven\repository\org\springframework\boot\spring-boot-starter\2.6.6\spring-boot-starter-2.6.6.jar;D:\maven\repository\org\springframework\boot\spring-boot\2.6.6\spring-boot-2.6.6.jar;D:\maven\repository\org\springframework\boot\spring-boot-starter-logging\2.6.6\spring-boot-starter-logging-2.6.6.jar;D:\maven\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;D:\maven\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;D:\maven\repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;D:\maven\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;D:\maven\repository\org\yaml\snakeyaml\1.29\snakeyaml-1.29.jar;D:\maven\repository\org\springframework\boot\spring-boot-starter-json\2.6.6\spring-boot-starter-json-2.6.6.jar;D:\maven\repository\com\fasterxml\jackson\core\jackson-databind\2.13.2.2\jackson-databind-2.13.2.2.jar;D:\maven\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.2\jackson-annotations-2.13.2.jar;D:\maven\repository\com\fasterxml\jackson\core\jackson-core\2.13.2\jackson-core-2.13.2.jar;D:\maven\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.13.2\jackson-datatype-jdk8-2.13.2.jar;D:\maven\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.13.2\jackson-datatype-jsr310-2.13.2.jar;D:\maven\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.13.2\jackson-module-parameter-names-2.13.2.jar;D:\maven\repository\org\springframework\boot\spring-boot-starter-tomcat\2.6.6\spring-boot-starter-tomcat-2.6.6.jar;D:\maven\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.60\tomcat-embed-core-9.0.60.jar;D:\maven\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.60\tomcat-embed-el-9.0.60.jar;D:\maven\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.60\tomcat-embed-websocket-9.0.60.jar;D:\maven\repository\org\springframework\spring-web\5.3.18\spring-web-5.3.18.jar;D:\maven\repository\org\springframework\spring-beans\5.3.18\spring-beans-5.3.18.jar;D:\maven\repository\org\springframework\spring-webmvc\5.3.18\spring-webmvc-5.3.18.jar;D:\maven\repository\org\springframework\spring-aop\5.3.18\spring-aop-5.3.18.jar;D:\maven\repository\org\springframework\spring-expression\5.3.18\spring-expression-5.3.18.jar;D:\maven\repository\org\projectlombok\lombok\1.18.22\lombok-1.18.22.jar;D:\maven\repository\net\bytebuddy\byte-buddy\1.11.22\byte-buddy-1.11.22.jar;D:\maven\repository\org\springframework\spring-core\5.3.18\spring-core-5.3.18.jar;D:\maven\repository\org\springframework\spring-jcl\5.3.18\spring-jcl-5.3.18.jar;D:\maven\repository\com\github\tobato\fastdfs-client\1.26.5\fastdfs-client-1.26.5.jar;D:\maven\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;D:\maven\repository\org\slf4j\jcl-over-slf4j\1.7.36\jcl-over-slf4j-1.7.36.jar;D:\maven\repository\ch\qos\logback\logback-classic\1.2.11\logback-classic-1.2.11.jar;D:\maven\repository\ch\qos\logback\logback-core\1.2.11\logback-core-1.2.11.jar;D:\maven\repository\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;D:\maven\repository\commons-beanutils\commons-beanutils\1.9.1\commons-beanutils-1.9.1.jar;D:\maven\repository\commons-collections\commons-collections\3.2.1\commons-collections-3.2.1.jar;D:\maven\repository\commons-io\commons-io\2.4\commons-io-2.4.jar;D:\maven\repository\org\apache\commons\commons-pool2\2.11.1\commons-pool2-2.11.1.jar;D:\maven\repository\org\hibernate\validator\hibernate-validator\6.2.3.Final\hibernate-validator-6.2.3.Final.jar;D:\maven\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;D:\maven\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;D:\maven\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;D:\maven\repository\org\springframework\boot\spring-boot-autoconfigure\2.6.6\spring-boot-autoconfigure-2.6.6.jar;D:\maven\repository\org\springframework\spring-context\5.3.18\spring-context-5.3.18.jar;D:\maven\repository\net\coobird\thumbnailator\0.4.8\thumbnailator-0.4.8.jar;D:\maven\repository\com\github\xiaoymin\knife4j-spring-boot-starter\3.0.3\knife4j-spring-boot-starter-3.0.3.jar;D:\maven\repository\com\github\xiaoymin\knife4j-spring-boot-autoconfigure\3.0.3\knife4j-spring-boot-autoconfigure-3.0.3.jar;D:\maven\repository\com\github\xiaoymin\knife4j-spring\3.0.3\knife4j-spring-3.0.3.jar;D:\maven\repository\com\github\xiaoymin\knife4j-annotations\3.0.3\knife4j-annotations-3.0.3.jar;D:\maven\repository\io\swagger\swagger-annotations\1.5.22\swagger-annotations-1.5.22.jar;D:\maven\repository\io\swagger\core\v3\swagger-annotations\2.1.2\swagger-annotations-2.1.2.jar;D:\maven\repository\com\github\xiaoymin\knife4j-core\3.0.3\knife4j-core-3.0.3.jar;D:\maven\repository\org\javassist\javassist\3.25.0-GA\javassist-3.25.0-GA.jar;D:\maven\repository\io\springfox\springfox-swagger2\3.0.0\springfox-swagger2-3.0.0.jar;D:\maven\repository\io\springfox\springfox-spi\3.0.0\springfox-spi-3.0.0.jar;D:\maven\repository\io\springfox\springfox-schema\3.0.0\springfox-schema-3.0.0.jar;D:\maven\repository\io\springfox\springfox-swagger-common\3.0.0\springfox-swagger-common-3.0.0.jar;D:\maven\repository\io\springfox\springfox-spring-web\3.0.0\springfox-spring-web-3.0.0.jar;D:\maven\repository\io\github\classgraph\classgraph\4.8.83\classgraph-4.8.83.jar;D:\maven\repository\io\springfox\springfox-spring-webflux\3.0.0\springfox-spring-webflux-3.0.0.jar;D:\maven\repository\org\mapstruct\mapstruct\1.3.1.Final\mapstruct-1.3.1.Final.jar;D:\maven\repository\io\springfox\springfox-spring-webmvc\3.0.0\springfox-spring-webmvc-3.0.0.jar;D:\maven\repository\io\springfox\springfox-core\3.0.0\springfox-core-3.0.0.jar;D:\maven\repository\io\springfox\springfox-oas\3.0.0\springfox-oas-3.0.0.jar;D:\maven\repository\io\swagger\core\v3\swagger-models\2.1.2\swagger-models-2.1.2.jar;D:\maven\repository\io\springfox\springfox-bean-validators\3.0.0\springfox-bean-validators-3.0.0.jar;D:\maven\repository\io\swagger\swagger-models\1.5.22\swagger-models-1.5.22.jar;D:\maven\repository\io\swagger\swagger-core\1.5.22\swagger-core-1.5.22.jar;D:\maven\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.13.2\jackson-dataformat-yaml-2.13.2.jar;D:\maven\repository\com\google\guava\guava\27.0.1-android\guava-27.0.1-android.jar;D:\maven\repository\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;D:\maven\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\repository\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;D:\maven\repository\org\checkerframework\checker-compat-qual\2.5.2\checker-compat-qual-2.5.2.jar;D:\maven\repository\com\google\errorprone\error_prone_annotations\2.2.0\error_prone_annotations-2.2.0.jar;D:\maven\repository\com\google\j2objc\j2objc-annotations\1.1\j2objc-annotations-1.1.jar;D:\maven\repository\org\codehaus\mojo\animal-sniffer-annotations\1.17\animal-sniffer-annotations-1.17.jar;D:\maven\repository\javax\validation\validation-api\2.0.1.Final\validation-api-2.0.1.Final.jar;D:\maven\repository\io\springfox\springfox-boot-starter\3.0.0\springfox-boot-starter-3.0.0.jar;D:\maven\repository\io\springfox\springfox-data-rest\3.0.0\springfox-data-rest-3.0.0.jar;D:\maven\repository\org\springframework\plugin\spring-plugin-core\2.0.0.RELEASE\spring-plugin-core-2.0.0.RELEASE.jar;D:\maven\repository\org\springframework\plugin\spring-plugin-metadata\2.0.0.RELEASE\spring-plugin-metadata-2.0.0.RELEASE.jar;D:\maven\repository\com\github\xiaoymin\knife4j-spring-ui\3.0.3\knife4j-spring-ui-3.0.3.jar" com.example.demo.DemoApplication
15:55:13,735 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - Will scan for changes in [file:/E:/gitee2020110/demo-learning/demo-learning-fastdfs1265/target/classes/logback-spring.xml]
15:55:13,737 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - Setting ReconfigureOnChangeTask scanning period to 10 seconds
15:55:13,738 |-INFO in ch.qos.logback.classic.joran.action.ContextNameAction - Setting logger context name as [logback]
15:55:13,741 |-INFO in ch.qos.logback.core.joran.action.ConversionRuleAction - registering conversion word clr with class [org.springframework.boot.logging.logback.ColorConverter]
15:55:13,741 |-INFO in ch.qos.logback.core.joran.action.ConversionRuleAction - registering conversion word wex with class [org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter]
15:55:13,742 |-INFO in ch.qos.logback.core.joran.action.ConversionRuleAction - registering conversion word wEx with class [org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter]
15:55:13,742 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
15:55:13,742 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [CONSOLE]
15:55:13,773 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
15:55:13,775 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ERROR_FILE]
15:55:13,799 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@124888672 - Archive files will be limited to [10 KB] each.
15:55:13,803 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@124888672 - Will use zip compression
15:55:13,804 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@124888672 - Will use the pattern ./test2/logs/springboot-logback/error/%d{yyyy-MM-dd}/error.%i.log for the active file
15:55:13,809 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6221a451 - The date pattern is 'yyyy-MM-dd' from file name pattern './test2/logs/springboot-logback/error/%d{yyyy-MM-dd}/error.%i.log.zip'.
15:55:13,810 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6221a451 - Roll-over at midnight.
15:55:13,815 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6221a451 - Setting initial period to Tue Apr 05 15:54:29 CST 2022
15:55:13,827 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - Active log file name: ./test2/logs/springboot-logback/error.log
15:55:13,827 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - File property is set to [./test2/logs/springboot-logback/error.log]
15:55:13,862 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
15:55:13,864 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [INFO_FILE]
15:55:13,867 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@664070838 - Archive files will be limited to [10 KB] each.
15:55:13,868 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@664070838 - Will use zip compression
15:55:13,868 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@664070838 - Will use the pattern ./test2/logs/springboot-logback/info/%d{yyyy-MM-dd}/info.%i.log for the active file
15:55:13,870 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6340e5f0 - The date pattern is 'yyyy-MM-dd' from file name pattern './test2/logs/springboot-logback/info/%d{yyyy-MM-dd}/info.%i.log.zip'.
15:55:13,870 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6340e5f0 - Roll-over at midnight.
15:55:13,876 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6340e5f0 - Setting initial period to Tue Apr 05 15:54:39 CST 2022
15:55:13,893 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[INFO_FILE] - Active log file name: ./test2/logs/springboot-logback/info.log
15:55:13,893 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[INFO_FILE] - File property is set to [./test2/logs/springboot-logback/info.log]
15:55:13,894 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
15:55:13,894 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SQL_FILE]
15:55:13,895 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1158258131 - Archive files will be limited to [10 KB] each.
15:55:13,895 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1158258131 - Will use zip compression
15:55:13,895 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1158258131 - Will use the pattern ./test2/logs/springboot-logback/sql/%d{yyyy-MM-dd}/sql.%i.log for the active file
15:55:13,896 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@13e344d - The date pattern is 'yyyy-MM-dd' from file name pattern './test2/logs/springboot-logback/sql/%d{yyyy-MM-dd}/sql.%i.log.zip'.
15:55:13,896 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@13e344d - Roll-over at midnight.
15:55:13,897 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@13e344d - Setting initial period to Tue Apr 05 14:19:52 CST 2022
15:55:13,899 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[SQL_FILE] - Active log file name: ./test2/logs/springboot-logback/sql.log
15:55:13,899 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[SQL_FILE] - File property is set to [./test2/logs/springboot-logback/sql.log]
15:55:13,900 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
15:55:13,900 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [REQUEST_FILE]
15:55:13,900 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@33533830 - Archive files will be limited to [10 KB] each.
15:55:13,901 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@33533830 - Will use zip compression
15:55:13,901 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@33533830 - Will use the pattern ./test2/logs/springboot-logback/request/%d{yyyy-MM-dd}/request.%i.log for the active file
15:55:13,902 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6574a52c - The date pattern is 'yyyy-MM-dd' from file name pattern './test2/logs/springboot-logback/request/%d{yyyy-MM-dd}/request.%i.log.zip'.
15:55:13,902 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6574a52c - Roll-over at midnight.
15:55:13,903 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6574a52c - Setting initial period to Tue Apr 05 14:19:52 CST 2022
15:55:13,904 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[REQUEST_FILE] - Active log file name: ./test2/logs/springboot-logback/request.log
15:55:13,904 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[REQUEST_FILE] - File property is set to [./test2/logs/springboot-logback/request.log]
15:55:13,905 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
15:55:13,907 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_INFO_FILE]
15:55:13,907 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [INFO_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_INFO_FILE]
15:55:13,907 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_INFO_FILE] - Attaching appender named [INFO_FILE] to AsyncAppender.
15:55:13,908 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_INFO_FILE] - Setting discardingThreshold to 0
15:55:13,909 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
15:55:13,909 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_ERROR_FILE]
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE]
15:55:13,910 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Attaching appender named [ERROR_FILE] to AsyncAppender.
15:55:13,910 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Setting discardingThreshold to 0
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_SQL_FILE]
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SQL_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_SQL_FILE]
15:55:13,910 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_SQL_FILE] - Attaching appender named [SQL_FILE] to AsyncAppender.
15:55:13,910 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_SQL_FILE] - Setting discardingThreshold to 0
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
15:55:13,910 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_REQUEST_FILE]
15:55:13,911 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [REQUEST_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_REQUEST_FILE]
15:55:13,911 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_REQUEST_FILE] - Attaching appender named [REQUEST_FILE] to AsyncAppender.
15:55:13,911 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_REQUEST_FILE] - Setting discardingThreshold to 0
15:55:13,911 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [error] to true
15:55:13,911 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to Logger[error]
15:55:13,911 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [info] to true
15:55:13,911 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [INFO_FILE] to Logger[info]
15:55:13,911 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [request] to INFO
15:55:13,911 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@71ba6d4e - Propagating INFO level on Logger[request] onto the JUL framework
15:55:13,912 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [request] to false
15:55:13,912 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [REQUEST_FILE] to Logger[request]
15:55:13,912 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.hibernate.SQL] to false
15:55:13,912 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@71ba6d4e - Propagating DEBUG level on Logger[org.hibernate.SQL] onto the JUL framework
15:55:13,912 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - org.hibernate.SQL level set to DEBUG
15:55:13,912 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SQL_FILE] to Logger[org.hibernate.SQL]
15:55:13,912 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate.type.descriptor.sql.BasicBinder] to TRACE
15:55:13,912 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@71ba6d4e - Propagating TRACE level on Logger[org.hibernate.type.descriptor.sql.BasicBinder] onto the JUL framework
15:55:13,912 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.hibernate.type.descriptor.sql.BasicBinder] to false
15:55:13,913 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - org.hibernate.type.descriptor.sql.BasicBinder level set to TRACE
15:55:13,913 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SQL_FILE] to Logger[org.hibernate.type.descriptor.sql.BasicBinder]
15:55:13,916 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
15:55:13,916 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@71ba6d4e - Propagating INFO level on Logger[ROOT] onto the JUL framework
15:55:13,916 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [CONSOLE] to Logger[ROOT]
15:55:13,916 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to Logger[ROOT]
15:55:13,916 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [INFO_FILE] to Logger[ROOT]
15:55:13,917 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
15:55:13,917 |-INFO in org.springframework.boot.logging.logback.SpringBootJoranConfigurator@54c5a2ff - Registering current configuration as safe fallback point
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.6)
2022-04-05 15:55:14.021 INFO 11712 --- [kground-preinit] o.h.validator.internal.util.Version : HV000001: Hibernate Validator 6.2.3.Final
2022-04-05 15:55:14.045 INFO 11712 --- [ main] com.example.demo.DemoApplication : Starting DemoApplication using Java 1.8.0_191 on DESKTOP-D7G2Q9D with PID 11712 (E:\gitee2020110\demo-learning\demo-learning-fastdfs1265\target\classes started by Administrator in E:\gitee2020110\demo-learning)
2022-04-05 15:55:14.048 INFO 11712 --- [ main] com.example.demo.DemoApplication : The following 1 profile is active: "dev"
2022-04-05 15:55:17.137 INFO 11712 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8582 (http)
2022-04-05 15:55:17.148 INFO 11712 --- [ main] o.a.coyote.http11.Http11NioProtocol : Initializing ProtocolHandler ["http-nio-8582"]
2022-04-05 15:55:17.149 INFO 11712 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2022-04-05 15:55:17.149 INFO 11712 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.60]
2022-04-05 15:55:17.353 INFO 11712 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
15:55:17,354 |-INFO in c.q.l.co.rolling.helper.RenameUtil - Renaming file [.\test2\logs\springboot-logback\info.log] to [.\test2\logs\springboot-logback\info\2022-04-05\info.5.log42338861067300.tmp]
15:55:17,357 |-INFO in ch.qos.logback.core.rolling.helper.Compressor - ZIP compressing [.\test2\logs\springboot-logback\info\2022-04-05\info.5.log42338861067300.tmp] as [.\test2\logs\springboot-logback\info\2022-04-05\info.5.log.zip]
15:55:17,357 |-INFO in c.q.l.core.rolling.helper.TimeBasedArchiveRemover - first clean up after appender initialization
15:55:17,357 |-INFO in c.q.l.core.rolling.helper.TimeBasedArchiveRemover - Multiple periods, i.e. 32 periods, seem to have elapsed. This is expected at application start.
2022-04-05 15:55:17.365 INFO 11712 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 3246 ms
2022-04-05 15:55:18.287 INFO 11712 --- [ main] o.a.coyote.http11.Http11NioProtocol : Starting ProtocolHandler ["http-nio-8582"]
2022-04-05 15:55:18.312 INFO 11712 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8582 (http) with context path ''
2022-04-05 15:55:18.319 WARN 11712 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
2022-04-05 15:55:18.320 INFO 11712 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Could not unregister MBean [com.github.tobato.fastdfs.domain.conn:name=fdfsConnectionPool,type=FdfsConnectionPool] as said MBean is not registered (perhaps already unregistered by an external process)
2022-04-05 15:55:18.499 INFO 11712 --- [ main] o.a.coyote.http11.Http11NioProtocol : Pausing ProtocolHandler ["http-nio-8582"]
2022-04-05 15:55:18.500 INFO 11712 --- [ main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
2022-04-05 15:55:18.505 WARN 11712 --- [ main] o.a.c.loader.WebappClassLoaderBase : The web application [ROOT] appears to have started a thread named [logback-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
2022-04-05 15:55:18.506 WARN 11712 --- [ main] o.a.c.loader.WebappClassLoaderBase : The web application [ROOT] appears to have started a thread named [logback-3] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1088)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
2022-04-05 15:55:18.507 INFO 11712 --- [ main] o.a.coyote.http11.Http11NioProtocol : Stopping ProtocolHandler ["http-nio-8582"]
2022-04-05 15:55:18.512 INFO 11712 --- [ main] o.a.coyote.http11.Http11NioProtocol : Destroying ProtocolHandler ["http-nio-8582"]
2022-04-05 15:55:18.520 INFO 11712 --- [ main] ConditionEvaluationReportLoggingListener :
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2022-04-05 15:55:18.557 ERROR 11712 --- [ main] o.s.boot.SpringApplication : Application run failed
org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181)
at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356)
at java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155)
at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:935)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:586)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:740)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:415)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1312)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1301)
at com.example.demo.DemoApplication.main(DemoApplication.java:10)
Caused by: java.lang.NullPointerException: null
at springfox.documentation.spring.web.WebMvcPatternsRequestConditionWrapper.getPatterns(WebMvcPatternsRequestConditionWrapper.java:56)
at springfox.documentation.RequestHandler.sortedPaths(RequestHandler.java:113)
at springfox.documentation.spi.service.contexts.Orderings.lambda$byPatternsCondition$3(Orderings.java:89)
at java.util.Comparator.lambda$comparing$77a9974f$1(Comparator.java:469)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
at java.util.TimSort.sort(TimSort.java:220)
at java.util.Arrays.sort(Arrays.java:1512)
at java.util.ArrayList.sort(ArrayList.java:1462)
at java.util.stream.SortedOps$RefSortingSink.end(SortedOps.java:387)
at java.util.stream.Sink$ChainedReference.end(Sink.java:258)
at java.util.stream.Sink$ChainedReference.end(Sink.java:258)
at java.util.stream.Sink$ChainedReference.end(Sink.java:258)
at java.util.stream.Sink$ChainedReference.end(Sink.java:258)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider.requestHandlers(WebMvcRequestHandlerProvider.java:81)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.withDefaults(AbstractDocumentationPluginsBootstrapper.java:107)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.buildContext(AbstractDocumentationPluginsBootstrapper.java:91)
at springfox.documentation.spring.web.plugins.AbstractDocumentationPluginsBootstrapper.bootstrapDocumentationPlugins(AbstractDocumentationPluginsBootstrapper.java:82)
at springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.start(DocumentationPluginsBootstrapper.java:100)
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178)
... 14 common frames omitted
Process finished with exit code 1
- 异常:org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
- 解决方案:
spring:
mvc:
pathmatch:
matching-strategy: ANT_PATH_MATCHER
或者这样加
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher