Tag Archives: spring

Realization of springboot authorization verification technology based on JWT

The JWT token permission authentication technology based on Springboot is simply implemented
JWT profile
Json Web Token (JWT) : Json network Token, an open standard based on Json ((RFC 7519) for passing declarations between network application environments. JWT is a lightweight, secure, cross-platform transport format that defines a compact, self-contained way to communicate between two parties using JSON objects to securely transfer information. This information is reliable because of the digital signature.
Implementation steps:
Environmental spring boot
1. Add JWT dependency

 <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.8.1</version>
        </dependency>
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.1</version>
        </dependency>

2. Create annotation package </h6 b> under SRC
New custom annotation class JwtToken

package com.qf.tyleryue_one.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;


@Target({ElementType.METHOD,ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface JwtToken {
}

3. Create utils package </h6 b> under SRC
Create a new custom JwtUtils utility class

package com.qf.tyleryue_one.utils;

import com.auth0.jwt.JWT;
import com.auth0.jwt.JWTCreator;
import com.auth0.jwt.JWTVerifier;
import com.auth0.jwt.algorithms.Algorithm;
import jdk.internal.org.objectweb.asm.TypeReference;

import java.util.Date;


public class JwtUtils {
    private final static long EXPIRE_TIME=5*60*1000;
    private final static String SECRECT="Tyler_Yue_key";
    public  static  String sign(String userId){
        Date exipre_date = new Date(System.currentTimeMillis() + EXPIRE_TIME);
        JWTCreator.Builder builder = JWT.create();
        builder.withAudience(userId);
        builder.withExpiresAt(exipre_date);
        Algorithm algorithm = Algorithm.HMAC256(SECRECT);
        String sign = builder.sign(algorithm);
        return  sign;
    }

    public  static boolean verifyToken(String token){

        try {
            Algorithm algorithm = Algorithm.HMAC256(SECRECT);
            JWTVerifier build = JWT.require(algorithm).build();
            return  true;
        } catch (Exception e) {
            throw  new RuntimeException("Out of date");
        }
      
    }
}

4. Create new vo package under SRC
Encapsulates an object that returns the user’s token

package com.qf.tyleryue_one.vo;

import com.alibaba.druid.filter.AutoLoad;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


@Data
@AllArgsConstructor
@NoArgsConstructor
public class TokenVo {
    private  String usernaem;
    private String token;
}

5. Example of controller layer user login business login with token </h6 b>

package com.qf.tyleryue_one.controller;

import com.qf.tyleryue_one.entity.VueUser;
import com.qf.tyleryue_one.service.VueUserService;
import com.qf.tyleryue_one.utils.JwtUtils;
import com.qf.tyleryue_one.vo.Msg;
import com.qf.tyleryue_one.vo.TokenVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import java.util.UUID;


@Controller
public class VueUserController {
    @Autowired
    private VueUserService vueUserService;

    @RequestMapping(value = "/dealLogin",method = RequestMethod.POST)
    @CrossOrigin
    @ResponseBody
    public Msg login(@RequestBody VueUser vueUser){
        VueUser vueUser1 = vueUserService.selectByUsername(vueUser.getUsername());

        if (vueUser1!=null){
            if (vueUser1.getPassword().equals(vueUser.getPassword())){
                String userid = UUID.randomUUID().toString();
                String token = JwtUtils.sign(userid);
                TokenVo tokenVo = new TokenVo(vueUser.getUsername(), token);
                return new Msg(200,"Logined",tokenVo);

            }else {
                return  new Msg(403,"password wrong",null);
            }
        }else {
            return new Msg(403,"not exsit",null);
        }
    }
}

</ div>

IDEA-Error java error release version 5 not supported (How To Fix)

Refer to the

\rightarrow

→ Refer to article 1 and article 2
Content of the error
Error:java: error: release version 5 not supported

Error reason
Error setting Java compiler in project structure or Settings
The solution
1, the project structure
Click

File-Project Structure

File \rightarrow Project Structure

File→ProjectStructure
make sure that the SDK versions under the Project are the same
make sure that the Language level version in Sources is the same as the one used
make sure that the Module SDKl version is the same as the one used

2, the Preferences

    1. Click on Preferences(or Settings in Win version

    1. ) to search Java Compiler to ensure that the Target byte code version is the same as the selected version

3. Re-execution should have been resolved

4. One more question
Every time the pom file is modified, the original setting is useless and the error is reported again. The solution is to add maven-compiler-plugin to
in the parent pom and specify the JDK version to be used by the JDK

	<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>13</source>
                    <target>13</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

Elasticsearch in Spring uses Spel to dynamically create Index of Documet class

1 Usage Scenario
In some projects, the index of ES needs to be dynamically generated according to the conditions in the program to achieve the purpose of data collation. For example, a system log with a large amount of data needs to be indexed, so index needs to be generated dynamically.
2 Spel generates Index dynamically
Here USES the spring - data - elasticsearch </ code> ElasticsearchRestTemplate </ code> es operation, version for 3.2.0.

<dependency>
	<groupId>org.springframework.data</groupId>
	<artifactId>spring-data-elasticsearch</artifactId>
	<version>3.2.0.RELEASE</version>
</dependency>

You can specify the static IndexName when identifying POJO objects using the @document annotation.

@Document(indexName = "indexName", type = "logger")

But how do you dynamically generate an index?So let’s say Spel.
Spel full name is Spring Expression Language, is a Spring Expression Language, function is very powerful, official website.
Using Spel, you can call the Bean’s methods through an expression in the annotation to assign values to parameters.
Therefore, the idea of dynamic generation is to create an index generator and call the generator method in @ducument to assign the attribute indexName.
Examples of generators are as follows:

@Component("indexNameGenerator")
public class IndexNameGenerator {
    public String commonIndex() {
        String date = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
        return "collectlog_" + date;
    }
}

An instance of the Document class is as follows:

@NoArgsConstructor
@Data
@Document(indexName = "#{@indexNameGenerator.commonIndex()}", type = "logger")
public class ESDocument {
    @Field(analyzer = "ik_max_word", searchAnalyzer = "ik_max_word")
    private String content;
    private String cluster;
    private long date = LocalDateTime.now().toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
    private String path;
    private String ip;
    private String level;
}

As you can see, in the @ the Document </ code> annotation, call the indexNameGenerator.com monIndex () </ code>, the method to obtain the Index of every day.
this method is called every time new data is added.
3. Some notes
Note that Spel USES context to get the corresponding Bean Resolver. If the project is running and an exception is reported,

org.springframework.expression.spel.SpelEvaluationException: 
EL1057E: No bean resolver registered in the context to resolve access to bean 'indexNameGenerator'

This reason is mainly caused by problems with the spring context used in Spel, you can break to the SpelExpression#getValue method debugging problem.

org.springframework.expression.spel.standard.SpelExpression#getValue(org.springframework.expression.EvaluationContext, java.lang.Class<T>) 

When used in ES, if is to manually create the ElasticsearchRestTemplate </ code>, must be set when creating the instance of ElasticsearchConverter </ code>, or you will quote the exception.
ElasticsearchConverter can use the generated Bean in springboot autoconfig, in which the correct ApplicationContext has been injected. The example is as follows:

@EnableConfigurationProperties(ESProperties.class)
@Service("elasticSearchHandlerFactory")
public class ElasticSearchHandlerFactory {
    @Resource
    ESProperties esProperties;

    @Resource
    ElasticsearchConverter elasticsearchConverter;

    public ElasticsearchRestTemplate getHandler() {
        ESProperties.DbConfig dbConfig = esProperties.getDbList().get("c1");
        final ClientConfiguration configuration = ClientConfiguration.builder()
                .connectedTo(dbConfig.getHostAndPort())
                .withBasicAuth(dbConfig.getUsername(), dbConfig.getPassword())
                .build();
        RestHighLevelClient client = RestClients.create(configuration).rest();
        return new ElasticsearchRestTemplate(client, elasticsearchConverter);
    }
}

The above content is a personal learning summary, if there is any improper, welcome to correct in the comments

When the fastJson tool class converts the installed list into JSONArray, the key whose value is null in the hashmap will also be lost.

Problems encountered: The fastJson utility class will have List&LT installed; HashMap> When converted to a JSONArray, the key with null value in the HashMap is also lost. Code:

JSONArray dataArray=JSONArray.parseArray(JSON.toJSONString(datalist))

 
Solutions:

JSONArray dataArray=JSONArray.parseArray(JSON.toJSONString(datalist,SerializerFeature.WriteMapNullValue))

 

Error parsing lifecycle processing instructions

Create a simple Maven project, modify pom.xml to add Spring Boot-related starter, as follows:

	<parent>
	    <groupId>org.springframework.boot</groupId>
	    <artifactId>spring-boot-starter-parent</artifactId>
	    <version>1.5.9.RELEASE</version>
	</parent>
	<dependencies>
	    <dependency>
	        <groupId>org.springframework.boot</groupId>
	        <artifactId>spring-boot-starter-web</artifactId>
	    </dependency>
	</dependencies>

This is the focus, but I found that I made a mistake when adding the Spring-boot-starter parent, with the following information: Error parsing processing instructions jump to definition in parent POm. Refer to the following figure:

Maybe maven got mad again. Using Alt +F5 to force update the maven project, it still reported an error. Finally, the jar package under the directory org/springframework/boot in the maven repository was deleted, and the error will not be reported when updating the maven project.

Start tomcat server error Context initialization failed

Severe: Context initialization failed
org. Springframework. Beans. Factory. BeanCreationException: Error creating bean with name ‘org.springframework.context.annotation.internalAsyncAnnotationProcessor’ defined in org.springframework.scheduling.annotation.ProxyAsyncConfiguration: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.scheduling.annotation.AsyncAnnotationBeanPostProcessor]: Factory method ‘asyncAdvisor’ threw exception; nested exception is java.lang.IllegalArgumentException: @EnableAsync annotation metadata was not injected
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
At…
Solution: In springMVC.xml configuration file will < context:component-scan base-package=”*”/>
Change the path of your own project class files to: < context:component-scan base-package=”com.srpingmvc.*”>
— — — — — — — — — — — — — — — — — — — — to interpret the following — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
Now let’s take a look at the SpringMVC.xml file to see why this is happening
< ?The XML version = “1.0” encoding = “utf-8”?>
< beans xmlns=”http://www.springframework.org/schema/beans”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:context=”http://www.springframework.org/schema/context”
xsi:schemaLocation=”http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.3.xsd “& gt;
 
< ! — Configure @Controller @service –>
< context:component-scan base-package=”com.springmvc.*”> < /context:component-scan>
< ! — View parser logical View, physical view –& GT;
< bean class= “org.springframework.web.servlet.view.InternalResourceViewResolver”>
< property name=”prefix” value=”/”> < /property>
< property name=”suffix” value= “.jsp”> < /property>
< /bean>
 
< /beans>
In the configuration file, base-package=”com.srpingmvc.*” means that all files under the com.springMVC folder will be scanned for the purpose of scanning
Register classes with specific annotations such as @Controller @Component # Repository and so on as beans in the Spring container.
The following is reproduced from: http://blog.csdn.net/zzjjiandan/article/details/22922847
The Spring configuration file is the “drawing” for directing the Spring factory to Bean production, dependency injection (assembly), and Bean instance distribution.
Java EE programmers must learn and flexibly apply this “drawing” to accurately express their “production intentions”.
The Spring configuration file is one or more standard XML documents. Applicationcontext.xml is the default configuration file for Spring.
When the container starts and cannot find the specified configuration document, an attempt is made to load the default configuration file.
The following is a relatively complete configuration file template. The basic purpose of each XML tag node in the document is also explained in detail.
These XML tag nodes will be used in the following knowledge points. After mastering the purpose of these XML nodes and attributes,
It provides a solid foundation for us to start writing configuration files.

 
 

ajax error 400 (Failed to load resource: the server responded with a status of 400 (Bad Request))

Failed to load resource: the server responded with a status of 400 (Bad Request)
http://localhost:8081/ezsonar/npm/appportmanage/saveEditAppPortManage
The reason for the error code 400: basically it is caused by the incorrect data format passed by the front desk.
But how this format is incorrect depends on how you understand how the data is transmitted.
For example, if the back end parameter is an int, but the front end passes a NULL, then the type cannot be cast, so 400.
Now for my reason, this is a bit weird: it’s because the backend model’s unreferenced constructor was overridden by the referenced constructor and reported an error of 400.
Write down the reason for my code error 400:
Foreground code:

	$.ajax({
		url: SUBSYSTEM_APP_NAME + "appportmanage/saveEditAppPortManage",
		type: "post",
		contentType: "application/json; charset=utf-8",
		data: JSON.stringify(data),
		dataType: "json",
		success: function (data) {
			if (data.success) {
				GMS.success(data.msg);
			} else {
				GMS.error(data.msg, 3000);
			}
		}
	});

First of all, the properties of the data object encapsulated in the foreground are consistent with the properties of the Java model in the background, which is not the cause of the problem. Don’t worry.
Notice, for those of you who reported 400 wrong, I’m saying that the front and back of all of my attributes are OK, but you reported 400 wrong, are you sure that your front and back objects are the same parameter types for all of your attributes?For example: a property is List&lt in front and background; String> ?Boolean?And so on and so forth. This is the most basic error gesture.
You’d better check the problem first and then continue to see if it is the same as the original cause of my error.
However, the Ajax type and various parameters can be matched with the background, which is not the cause of the problem.
Background code:

	@RequestMapping(value = "/saveEditAppPortManage")
	public @ResponseBody JsonResult saveEditRenameDetail (@RequestBody Appportmanage detail) {
		LOG.debug("---------------AppportmanageController:saveEditAppPortManage---------------");
		LOG.debug("---------------detail:" + detail + "---------------");

		return appportmanageService.saveEditAppPortManage(detail);
	}

Second, the front and back urls are also aligned, as are the attributes of the model. Then again, spring MVC’s annotation tag is fine.
The original code was OK. Or the above code, the program can work normally, run no problem.
But I made the following changes:
Modify the data model: the original model Java file is some of the properties and simple getter and setter, s then I due to business needs, to the original model to add an attribute, of course, also add the corresponding getter and setter, then demand because I added a constructor with parameters, because I’m new in other places the object model.
Then,,,
The problem arises.
I’ll just give you an error number of 400.
At first, I thought it was the problem of adding attributes, but after checking, I found it was not the problem.
The problem is the constructor for the Model Java file.
Solution: Add another no-arguments constructor to the Model Java file. The explanation is below.
As for why, it’s up to you to understand how spring MVC passes parameters between front and back.
Originally I didn’t add a constructor, each model will bring a with no parameters by default constructor, then the front desk the data format of encapsulation and attributes of the model as long as the background, and then spring MVC can own in the background, according to the model to the front desk to get data, corresponding to pack into the @ RequestBody Appportmanage detail, this parameter, is the premise of the implementation, your model has a default constructor, with no arguments, Then the system itself goes to new an object, and then it goes to load the data into it. Then you can use it.
Because, I have updated the model constructor, if you don’t write constructor with no parameters, so the original model’s own without arguments constructor, then the controler layer, is in the foreground of data obtained, to loading data, he will not according to your arguments constructor with a new object model you want, so that problems just appeared.
Then, after today’s error, you’ll know exactly how the data in the background and in the front corresponds. Originally I just thought, as long as the consistent data model is ok.
Now, you know, oh, it has to do with constructors.
Why did I delete the empty constructor?Because the IDE tells me that the constructor is useless, and I delete it. And then I was miserable. Oh, Sid!!
The reason I gave this error is a little bit deeper, because this error gives you an idea of how springMVC’s annotations work, and if you know IOC, which is what Spring talks about dependency injection and inversion of control, you’ll understand this error even better.
 
 

How to Fix Spring Boot OTS parsing error: Failed to convert WOFF 2.0

In order to facilitate the configuration in the project, often use the properties file save configuration information, project started, need to open maven filtering with the properties of the attribute value replace placeholders in the configuration file, for example, I used in the project of c3p0.. the properties file database connection information, so that every time I need to change the database connection information, only need to modify the c3p0. The properties of the file, Using the ${} read value in mybatis config. XML (see figure below), using maven’s Resource plug-in to turn Filtering on, replaces ${} in the XML file with the contents of Properties at compile time.


When I was using Spring Boot, all the files related to my page were placed in the SRC /resource/ directory. After starting the project, the icon of the page (font-awesome is used) could not be used. I have checked the official document and explained as follows: means that turning on The Filtering function using Maven’s Resource plug-in destroys files with binary content.
According to the official document needs to modify the configuration as follows (this project is an example) :

<resources>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>static/fonts/**</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <filtering>false</filtering>
                <includes>
                    <include>static/fonts/**</include>
                </includes>
            </resource>
        </resources>

Static directory part content:


After the project is compiled, the files will not be corrupted.

WebSocket handshake Unexpected response code 403

sometimes when a client makes a websocket request, the front end displays an error as follows:

index.js:9 WebSocket connection to 'ws://127.0.0.1:8080/shop/ws?uid=3224458&sid=826' failed: Error during WebSocket handshake: Unexpected response code: 403

cause:

as of Spring Framework 4.1.5, the default behavior of WebSocket and SockJS is to accept only the same original requests. You can also allow a list of all or specified sources.

resolved:

links that are allowed to be accessed can be set when registered in WebSocketConfig.
setAllowedOrigins(String[] domains) allows long connections to a given domain name or IP(including port number), domains allowed to be accessed.
if you use the “*” sign indefinitely, and if you specify a domain name, you must start with HTTP or HTTPS.

example:

setAllowedOrigins (” http://127.0.0.1:8080 “);
or add setAllowedOrigins(“*”)


@Configuration
@EnableWebMvc
@EnableWebSocket
public class ShopWebSocketConfig extends WebMvcConfigurerAdapter implements WebSocketConfigurer{

	@Resource
	private ShopWebSocketHandler shopWebSocketHandler;
	
	@Override
	public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
		registry.addHandler(shopWebSocketHandler, "/ws").addInterceptors(new ShopHandshakeInterceptor()).setAllowedOrigins("*");
		registry.addHandler(shopWebSocketHandler, "/sockjs/ws").addInterceptors(new ShopHandshakeInterceptor()).withSockJS();
	}
}

Spring configuration transaction, JUnit unit test error “failed to load ApplicationContext”

problem:

Junit unit test code is as follows:

package cn.muke.spring.demo2;

import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

/**
 * Spring的声明式事务管理方式一的测试类
 * @author CX
 *
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext2.xml")
public class SpringDemo2 {
	
	/**
	 * 因为要测试业务层的实现类,所以引用业务层的接口
	 */
	@Resource(name="accountService")
	private AccountService accountService;	
	
    /**
	 * 转账案例:
	 */
	@Test
	public void demo1() {
		accountService.transfer("aaa", "bbb", 200d);
	}
}

Applicationcontext2.xml configuration is as follows :

<?xml version="1.0" encoding='UTF-8'?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans.xsd
	http://www.springframework.org/schema/context
	http://www.springframework.org/schema/context/spring-context.xsd
	http://www.springframework.org/schema/aop
	http://www.springframework.org/schema/aop/spring-aop.xsd
	http://www.springframework.org/schema/tx
	http://www.springframework.org/schema/tx/spring-tx.xsd">
		
	<!-- 引入外部的属性文件 -->
	<context:property-placeholder location="classpath:jdbc.properties"/>
	
	<!-- 配置c3p0连接池 -->
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
		<property name="driverClass" value="${jdbc.driverClass}"/>
		<property name="jdbcUrl" value="${jdbc.url}"/>
		<property name="user" value="${jdbc.username}"/>
		<property name="password" value="${jdbc.password}"/>
	</bean>
		
	<!-- 配置业务层类 -->
	<bean id="accountService" class="cn.muke.spring.demo2.AccountServiceImpl">
		<!-- 业务层注入DAO方式 -->
		<property name="accoutDAO" ref="accountDAO"/>		
	</bean>
	
	<!-- 配置DAO类 -->
	<bean id="accountDAO" class="cn.muke.spring.demo2.AccountDAOImpl">
		<!-- 在XML中注入连接池 ,在DAO实现类中继承JdbcDaoSupport,两者都可以 -->
		<property name="dataSource" ref="dataSource"/>
	</bean>
		
</beans>

accountService and accountDao should be ok, that is, the DataSource is injected into the dao, and the dao error message is injected into the service as follows:

2018-12-29 15:44:21 INFO  org.springframework.beans.factory.xml.XmlBeanDefinitionReader  Loading XML bean definitions from class path resource [applicationContext2.xml]
2018-12-29 15:44:21 INFO  org.springframework.context.support.GenericApplicationContext  Refreshing org.springframework.context.support.GenericApplicationContext@6537cf78: startup date [Sat Dec 29 15:44:21 CST 2018]; root of context hierarchy
2018-12-29 15:44:21 ERROR org.springframework.test.context.TestContextManager  Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@40f08448] to prepare test instance [cn.muke.spring.demo2.SpringDemo2@6bf256fa]
java.lang.IllegalStateException: Failed to load ApplicationContext
	at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:157)
	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:109)
	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:313)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:211)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:288)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:284)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)
Caused by: java.lang.IllegalArgumentException
	at org.springframework.asm.ClassReader.<init>(Unknown Source)
	at org.springframework.asm.ClassReader.<init>(Unknown Source)
	at org.springframework.asm.ClassReader.<init>(Unknown Source)
	at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:52)
	at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:80)
	at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:101)
	at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:76)
	at org.springframework.context.annotation.ConfigurationClassUtils.checkConfigurationClassCandidate(ConfigurationClassUtils.java:70)
	at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:253)
	at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:223)
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:630)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:461)
	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:106)
	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:57)
	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:100)
	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:248)
	at org.springframework.test.context.TestContext.loadApplicationContext(TestContext.java:124)
	at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:148)
	... 24 more

solution:

this is because Spring is in conflict with the JDK version, Spring3.* is in conflict with JDK 1.8. So you need to change the JDK to 1.7 or upgrade to Spring4.*.

Failed to determine a suitable driver class

2. springboot x

"H:\Program Files\Java\jdk1.8.0_181\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 "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=57198:C:\Program Files\JetBrains\IntelliJ IDEA 2019.3.3\bin" -Dfile.encoding=UTF-8 -classpath "H:\Program Files\Java\jdk1.8.0_181\jre\lib\charsets.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\deploy.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\access-bridge-64.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\cldrdata.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\dnsns.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jaccess.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jfxrt.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\localedata.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\nashorn.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunec.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunjce_provider.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunmscapi.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunpkcs11.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\zipfs.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\javaws.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\jce.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\jfr.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\jfxswt.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\jsse.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\management-agent.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\plugin.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\resources.jar;H:\Program Files\Java\jdk1.8.0_181\jre\lib\rt.jar;E:\pratice\xxxxx-user\xxxxx-auth\target\classes;D:\repository\org\springframework\boot\spring-boot-starter-web\2.0.9.RELEASE\spring-boot-starter-web-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter\2.0.9.RELEASE\spring-boot-starter-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot\2.0.9.RELEASE\spring-boot-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-logging\2.0.9.RELEASE\spring-boot-starter-logging-2.0.9.RELEASE.jar;D:\repository\ch\qos\logback\logback-classic\1.2.3\logback-classic-1.2.3.jar;D:\repository\org\apache\logging\log4j\log4j-to-slf4j\2.10.0\log4j-to-slf4j-2.10.0.jar;D:\repository\org\apache\logging\log4j\log4j-api\2.10.0\log4j-api-2.10.0.jar;D:\repository\org\slf4j\jul-to-slf4j\1.7.26\jul-to-slf4j-1.7.26.jar;D:\repository\javax\annotation\javax.annotation-api\1.3.2\javax.annotation-api-1.3.2.jar;D:\repository\org\yaml\snakeyaml\1.19\snakeyaml-1.19.jar;D:\repository\org\springframework\boot\spring-boot-starter-json\2.0.9.RELEASE\spring-boot-starter-json-2.0.9.RELEASE.jar;D:\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.9.8\jackson-datatype-jdk8-2.9.8.jar;D:\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.9.8\jackson-datatype-jsr310-2.9.8.jar;D:\repository\org\springframework\boot\spring-boot-starter-tomcat\2.0.9.RELEASE\spring-boot-starter-tomcat-2.0.9.RELEASE.jar;D:\repository\org\apache\tomcat\embed\tomcat-embed-core\8.5.39\tomcat-embed-core-8.5.39.jar;D:\repository\org\apache\tomcat\embed\tomcat-embed-el\8.5.39\tomcat-embed-el-8.5.39.jar;D:\repository\org\apache\tomcat\embed\tomcat-embed-websocket\8.5.39\tomcat-embed-websocket-8.5.39.jar;D:\repository\org\hibernate\validator\hibernate-validator\6.0.16.Final\hibernate-validator-6.0.16.Final.jar;D:\repository\org\jboss\logging\jboss-logging\3.3.2.Final\jboss-logging-3.3.2.Final.jar;D:\repository\com\fasterxml\classmate\1.3.4\classmate-1.3.4.jar;D:\repository\org\springframework\spring-web\5.0.13.RELEASE\spring-web-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-beans\5.0.13.RELEASE\spring-beans-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-webmvc\5.0.13.RELEASE\spring-webmvc-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-aop\5.0.13.RELEASE\spring-aop-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-context\5.0.13.RELEASE\spring-context-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-expression\5.0.13.RELEASE\spring-expression-5.0.13.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-netflix-eureka-client\2.0.4.RELEASE\spring-cloud-starter-netflix-eureka-client-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-starter\2.0.4.RELEASE\spring-cloud-starter-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-context\2.0.4.RELEASE\spring-cloud-context-2.0.4.RELEASE.jar;D:\repository\org\springframework\security\spring-security-rsa\1.0.7.RELEASE\spring-security-rsa-1.0.7.RELEASE.jar;D:\repository\org\bouncycastle\bcpkix-jdk15on\1.60\bcpkix-jdk15on-1.60.jar;D:\repository\org\bouncycastle\bcprov-jdk15on\1.60\bcprov-jdk15on-1.60.jar;D:\repository\org\springframework\cloud\spring-cloud-netflix-core\2.0.4.RELEASE\spring-cloud-netflix-core-2.0.4.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-aop\2.0.9.RELEASE\spring-boot-starter-aop-2.0.9.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-netflix-eureka-client\2.0.4.RELEASE\spring-cloud-netflix-eureka-client-2.0.4.RELEASE.jar;D:\repository\com\netflix\eureka\eureka-client\1.9.3\eureka-client-1.9.3.jar;D:\repository\org\codehaus\jettison\jettison\1.3.7\jettison-1.3.7.jar;D:\repository\stax\stax-api\1.0.1\stax-api-1.0.1.jar;D:\repository\com\netflix\netflix-commons\netflix-eventbus\0.3.0\netflix-eventbus-0.3.0.jar;D:\repository\com\netflix\netflix-commons\netflix-infix\0.3.0\netflix-infix-0.3.0.jar;D:\repository\commons-jxpath\commons-jxpath\1.3\commons-jxpath-1.3.jar;D:\repository\org\antlr\antlr-runtime\3.4\antlr-runtime-3.4.jar;D:\repository\org\antlr\stringtemplate\3.2.1\stringtemplate-3.2.1.jar;D:\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;D:\repository\com\google\code\gson\gson\2.8.5\gson-2.8.5.jar;D:\repository\org\apache\commons\commons-math\2.2\commons-math-2.2.jar;D:\repository\com\netflix\archaius\archaius-core\0.7.6\archaius-core-0.7.6.jar;D:\repository\javax\ws\rs\jsr311-api\1.1.1\jsr311-api-1.1.1.jar;D:\repository\com\netflix\servo\servo-core\0.12.21\servo-core-0.12.21.jar;D:\repository\com\sun\jersey\jersey-core\1.19.1\jersey-core-1.19.1.jar;D:\repository\com\sun\jersey\jersey-client\1.19.1\jersey-client-1.19.1.jar;D:\repository\com\sun\jersey\contribs\jersey-apache-client4\1.19.1\jersey-apache-client4-1.19.1.jar;D:\repository\org\apache\httpcomponents\httpclient\4.5.8\httpclient-4.5.8.jar;D:\repository\org\apache\httpcomponents\httpcore\4.4.11\httpcore-4.4.11.jar;D:\repository\commons-codec\commons-codec\1.11\commons-codec-1.11.jar;D:\repository\com\google\inject\guice\4.1.0\guice-4.1.0.jar;D:\repository\javax\inject\javax.inject\1\javax.inject-1.jar;D:\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;D:\repository\com\github\vlsi\compactmap\compactmap\1.2.1\compactmap-1.2.1.jar;D:\repository\com\github\andrewoma\dexx\dexx-collections\0.2\dexx-collections-0.2.jar;D:\repository\com\netflix\eureka\eureka-core\1.9.3\eureka-core-1.9.3.jar;D:\repository\org\codehaus\woodstox\woodstox-core-asl\4.4.1\woodstox-core-asl-4.4.1.jar;D:\repository\javax\xml\stream\stax-api\1.0-2\stax-api-1.0-2.jar;D:\repository\org\codehaus\woodstox\stax2-api\3.1.4\stax2-api-3.1.4.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-netflix-archaius\2.0.4.RELEASE\spring-cloud-starter-netflix-archaius-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-netflix-archaius\2.0.4.RELEASE\spring-cloud-netflix-archaius-2.0.4.RELEASE.jar;D:\repository\commons-configuration\commons-configuration\1.8\commons-configuration-1.8.jar;D:\repository\commons-lang\commons-lang\2.6\commons-lang-2.6.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-netflix-ribbon\2.0.4.RELEASE\spring-cloud-starter-netflix-ribbon-2.0.4.RELEASE.jar;D:\repository\com\netflix\ribbon\ribbon\2.2.5\ribbon-2.2.5.jar;D:\repository\com\netflix\ribbon\ribbon-transport\2.2.5\ribbon-transport-2.2.5.jar;D:\repository\io\reactivex\rxnetty-contexts\0.4.9\rxnetty-contexts-0.4.9.jar;D:\repository\io\reactivex\rxnetty-servo\0.4.9\rxnetty-servo-0.4.9.jar;D:\repository\io\reactivex\rxnetty\0.4.9\rxnetty-0.4.9.jar;D:\repository\com\netflix\ribbon\ribbon-core\2.2.5\ribbon-core-2.2.5.jar;D:\repository\com\netflix\ribbon\ribbon-httpclient\2.2.5\ribbon-httpclient-2.2.5.jar;D:\repository\commons-collections\commons-collections\3.2.2\commons-collections-3.2.2.jar;D:\repository\com\netflix\netflix-commons\netflix-commons-util\0.3.0\netflix-commons-util-0.3.0.jar;D:\repository\com\netflix\ribbon\ribbon-loadbalancer\2.2.5\ribbon-loadbalancer-2.2.5.jar;D:\repository\com\netflix\netflix-commons\netflix-statistics\0.1.1\netflix-statistics-0.1.1.jar;D:\repository\io\reactivex\rxjava\1.3.8\rxjava-1.3.8.jar;D:\repository\com\netflix\ribbon\ribbon-eureka\2.2.5\ribbon-eureka-2.2.5.jar;D:\repository\com\thoughtworks\xstream\xstream\1.4.10\xstream-1.4.10.jar;D:\repository\xmlpull\xmlpull\1.1.3.1\xmlpull-1.1.3.1.jar;D:\repository\xpp3\xpp3_min\1.1.4c\xpp3_min-1.1.4c.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-openfeign\2.0.4.RELEASE\spring-cloud-starter-openfeign-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-openfeign-core\2.0.4.RELEASE\spring-cloud-openfeign-core-2.0.4.RELEASE.jar;D:\repository\io\github\openfeign\form\feign-form-spring\3.3.0\feign-form-spring-3.3.0.jar;D:\repository\io\github\openfeign\form\feign-form\3.3.0\feign-form-3.3.0.jar;D:\repository\com\google\code\findbugs\annotations\3.0.1\annotations-3.0.1.jar;D:\repository\net\jcip\jcip-annotations\1.0\jcip-annotations-1.0.jar;D:\repository\com\google\code\findbugs\jsr305\3.0.1\jsr305-3.0.1.jar;D:\repository\commons-fileupload\commons-fileupload\1.3.3\commons-fileupload-1.3.3.jar;D:\repository\commons-io\commons-io\2.2\commons-io-2.2.jar;D:\repository\org\springframework\cloud\spring-cloud-commons\2.0.4.RELEASE\spring-cloud-commons-2.0.4.RELEASE.jar;D:\repository\org\springframework\security\spring-security-crypto\5.0.12.RELEASE\spring-security-crypto-5.0.12.RELEASE.jar;D:\repository\io\github\openfeign\feign-core\9.7.0\feign-core-9.7.0.jar;D:\repository\io\github\openfeign\feign-slf4j\9.7.0\feign-slf4j-9.7.0.jar;D:\repository\io\github\openfeign\feign-hystrix\9.7.0\feign-hystrix-9.7.0.jar;D:\repository\io\github\openfeign\feign-java8\9.7.0\feign-java8-9.7.0.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-zipkin\2.0.4.RELEASE\spring-cloud-starter-zipkin-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-sleuth\2.0.4.RELEASE\spring-cloud-starter-sleuth-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-sleuth-core\2.0.4.RELEASE\spring-cloud-sleuth-core-2.0.4.RELEASE.jar;D:\repository\io\zipkin\brave\brave\5.6.1\brave-5.6.1.jar;D:\repository\io\zipkin\brave\brave-context-log4j2\5.6.1\brave-context-log4j2-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-spring-web\5.6.1\brave-instrumentation-spring-web-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-http\5.6.1\brave-instrumentation-http-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-spring-rabbit\5.6.1\brave-instrumentation-spring-rabbit-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-kafka-clients\5.6.1\brave-instrumentation-kafka-clients-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-httpclient\5.6.1\brave-instrumentation-httpclient-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-httpasyncclient\5.6.1\brave-instrumentation-httpasyncclient-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-spring-webmvc\5.6.1\brave-instrumentation-spring-webmvc-5.6.1.jar;D:\repository\io\zipkin\brave\brave-instrumentation-servlet\5.6.1\brave-instrumentation-servlet-5.6.1.jar;D:\repository\org\springframework\cloud\spring-cloud-sleuth-zipkin\2.0.4.RELEASE\spring-cloud-sleuth-zipkin-2.0.4.RELEASE.jar;D:\repository\io\zipkin\zipkin2\zipkin\2.12.0\zipkin-2.12.0.jar;D:\repository\io\zipkin\reporter2\zipkin-reporter\2.7.14\zipkin-reporter-2.7.14.jar;D:\repository\io\zipkin\reporter2\zipkin-sender-kafka11\2.7.14\zipkin-sender-kafka11-2.7.14.jar;D:\repository\io\zipkin\reporter2\zipkin-sender-amqp-client\2.7.14\zipkin-sender-amqp-client-2.7.14.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-netflix-hystrix\2.0.4.RELEASE\spring-cloud-starter-netflix-hystrix-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-netflix-ribbon\2.0.4.RELEASE\spring-cloud-netflix-ribbon-2.0.4.RELEASE.jar;D:\repository\com\netflix\hystrix\hystrix-core\1.5.18\hystrix-core-1.5.18.jar;D:\repository\org\hdrhistogram\HdrHistogram\2.1.9\HdrHistogram-2.1.9.jar;D:\repository\com\netflix\hystrix\hystrix-serialization\1.5.18\hystrix-serialization-1.5.18.jar;D:\repository\com\fasterxml\jackson\module\jackson-module-afterburner\2.9.8\jackson-module-afterburner-2.9.8.jar;D:\repository\com\netflix\hystrix\hystrix-metrics-event-stream\1.5.18\hystrix-metrics-event-stream-1.5.18.jar;D:\repository\com\netflix\hystrix\hystrix-javanica\1.5.18\hystrix-javanica-1.5.18.jar;D:\repository\org\ow2\asm\asm\5.0.4\asm-5.0.4.jar;D:\repository\com\google\guava\guava\15.0\guava-15.0.jar;D:\repository\io\reactivex\rxjava-reactive-streams\1.2.1\rxjava-reactive-streams-1.2.1.jar;D:\repository\org\reactivestreams\reactive-streams\1.0.2\reactive-streams-1.0.2.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-netflix-hystrix-dashboard\2.0.4.RELEASE\spring-cloud-starter-netflix-hystrix-dashboard-2.0.4.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-netflix-hystrix-dashboard\2.0.4.RELEASE\spring-cloud-netflix-hystrix-dashboard-2.0.4.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-freemarker\2.0.9.RELEASE\spring-boot-starter-freemarker-2.0.9.RELEASE.jar;D:\repository\org\freemarker\freemarker\2.3.28\freemarker-2.3.28.jar;D:\repository\org\webjars\jquery\2.1.1\jquery-2.1.1.jar;D:\repository\org\webjars\d3js\3.4.11\d3js-3.4.11.jar;D:\repository\org\aspectj\aspectjweaver\1.9.0\aspectjweaver-1.9.0.jar;D:\repository\org\aspectj\aspectjrt\1.9.0\aspectjrt-1.9.0.jar;D:\repository\org\springframework\cloud\spring-cloud-starter-config\2.0.5.RELEASE\spring-cloud-starter-config-2.0.5.RELEASE.jar;D:\repository\org\springframework\cloud\spring-cloud-config-client\2.0.5.RELEASE\spring-cloud-config-client-2.0.5.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-actuator\2.0.9.RELEASE\spring-boot-starter-actuator-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-actuator-autoconfigure\2.0.9.RELEASE\spring-boot-actuator-autoconfigure-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-actuator\2.0.9.RELEASE\spring-boot-actuator-2.0.9.RELEASE.jar;D:\repository\io\micrometer\micrometer-core\1.0.10\micrometer-core-1.0.10.jar;D:\repository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;D:\repository\org\springframework\boot\spring-boot-configuration-processor\2.0.9.RELEASE\spring-boot-configuration-processor-2.0.9.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-thymeleaf\2.0.9.RELEASE\spring-boot-starter-thymeleaf-2.0.9.RELEASE.jar;D:\repository\org\thymeleaf\thymeleaf-spring5\3.0.11.RELEASE\thymeleaf-spring5-3.0.11.RELEASE.jar;D:\repository\org\thymeleaf\thymeleaf\3.0.11.RELEASE\thymeleaf-3.0.11.RELEASE.jar;D:\repository\org\attoparser\attoparser\2.0.5.RELEASE\attoparser-2.0.5.RELEASE.jar;D:\repository\org\unbescape\unbescape\1.1.6.RELEASE\unbescape-1.1.6.RELEASE.jar;D:\repository\org\thymeleaf\extras\thymeleaf-extras-java8time\3.0.4.RELEASE\thymeleaf-extras-java8time-3.0.4.RELEASE.jar;D:\repository\org\projectlombok\lombok\1.16.22\lombok-1.16.22.jar;D:\repository\org\springframework\spring-core\5.0.13.RELEASE\spring-core-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-jcl\5.0.13.RELEASE\spring-jcl-5.0.13.RELEASE.jar;D:\repository\org\springframework\session\spring-session-data-redis\2.0.10.RELEASE\spring-session-data-redis-2.0.10.RELEASE.jar;D:\repository\org\springframework\data\spring-data-redis\2.0.14.RELEASE\spring-data-redis-2.0.14.RELEASE.jar;D:\repository\org\springframework\data\spring-data-keyvalue\2.0.14.RELEASE\spring-data-keyvalue-2.0.14.RELEASE.jar;D:\repository\org\springframework\data\spring-data-commons\2.0.14.RELEASE\spring-data-commons-2.0.14.RELEASE.jar;D:\repository\org\springframework\spring-tx\5.0.13.RELEASE\spring-tx-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-oxm\5.0.13.RELEASE\spring-oxm-5.0.13.RELEASE.jar;D:\repository\org\springframework\spring-context-support\5.0.13.RELEASE\spring-context-support-5.0.13.RELEASE.jar;D:\repository\org\springframework\session\spring-session-core\2.0.10.RELEASE\spring-session-core-2.0.10.RELEASE.jar;D:\repository\org\springframework\boot\spring-boot-starter-data-redis\2.0.9.RELEASE\spring-boot-starter-data-redis-2.0.9.RELEASE.jar;D:\repository\io\lettuce\lettuce-core\5.0.5.RELEASE\lettuce-core-5.0.5.RELEASE.jar;D:\repository\io\projectreactor\reactor-core\3.1.16.RELEASE\reactor-core-3.1.16.RELEASE.jar;D:\repository\io\netty\netty-common\4.1.34.Final\netty-common-4.1.34.Final.jar;D:\repository\io\netty\netty-transport\4.1.34.Final\netty-transport-4.1.34.Final.jar;D:\repository\io\netty\netty-buffer\4.1.34.Final\netty-buffer-4.1.34.Final.jar;D:\repository\io\netty\netty-resolver\4.1.34.Final\netty-resolver-4.1.34.Final.jar;D:\repository\io\netty\netty-handler\4.1.34.Final\netty-handler-4.1.34.Final.jar;D:\repository\io\netty\netty-codec\4.1.34.Final\netty-codec-4.1.34.Final.jar;D:\repository\org\springframework\boot\spring-boot-starter-jdbc\2.0.9.RELEASE\spring-boot-starter-jdbc-2.0.9.RELEASE.jar;D:\repository\com\zaxxer\HikariCP\2.7.9\HikariCP-2.7.9.jar;D:\repository\org\springframework\spring-jdbc\5.0.13.RELEASE\spring-jdbc-5.0.13.RELEASE.jar;D:\repository\com\alibaba\druid\1.1.13\druid-1.1.13.jar;D:\repository\com\fasterxml\jackson\core\jackson-core\2.9.8\jackson-core-2.9.8.jar;D:\repository\com\fasterxml\jackson\core\jackson-databind\2.9.8\jackson-databind-2.9.8.jar;D:\repository\com\fasterxml\jackson\core\jackson-annotations\2.9.0\jackson-annotations-2.9.0.jar;D:\repository\com\fasterxml\jackson\datatype\jackson-datatype-joda\2.9.8\jackson-datatype-joda-2.9.8.jar;D:\repository\joda-time\joda-time\2.9.9\joda-time-2.9.9.jar;D:\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.9.8\jackson-module-parameter-names-2.9.8.jar;D:\repository\com\github\pagehelper\pagehelper-spring-boot-starter\1.1.2\pagehelper-spring-boot-starter-1.1.2.jar;D:\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter\1.3.0\mybatis-spring-boot-starter-1.3.0.jar;D:\repository\org\mybatis\spring\boot\mybatis-spring-boot-autoconfigure\1.3.0\mybatis-spring-boot-autoconfigure-1.3.0.jar;D:\repository\org\mybatis\mybatis\3.4.4\mybatis-3.4.4.jar;D:\repository\org\mybatis\mybatis-spring\1.3.1\mybatis-spring-1.3.1.jar;D:\repository\com\github\pagehelper\pagehelper-spring-boot-autoconfigure\1.1.2\pagehelper-spring-boot-autoconfigure-1.1.2.jar;D:\repository\com\github\pagehelper\pagehelper\5.0.3\pagehelper-5.0.3.jar;D:\repository\com\github\jsqlparser\jsqlparser\1.0\jsqlparser-1.0.jar;D:\repository\com\alibaba\druid-spring-boot-starter\1.1.13\druid-spring-boot-starter-1.1.13.jar;D:\repository\org\slf4j\slf4j-api\1.7.26\slf4j-api-1.7.26.jar;D:\repository\org\springframework\boot\spring-boot-autoconfigure\2.0.9.RELEASE\spring-boot-autoconfigure-2.0.9.RELEASE.jar;E:\pratice\xxxxx-base\xxxxx-core\target\classes;D:\repository\javax\validation\validation-api\2.0.1.Final\validation-api-2.0.1.Final.jar;D:\repository\com\alibaba\fastjson\1.2.50\fastjson-1.2.50.jar;D:\repository\org\apache\commons\commons-pool2\2.5.0\commons-pool2-2.5.0.jar;D:\repository\net\logstash\logback\logstash-logback-encoder\5.0\logstash-logback-encoder-5.0.jar;D:\repository\ch\qos\logback\logback-core\1.2.3\logback-core-1.2.3.jar;D:\repository\org\apache\commons\commons-lang3\3.10\commons-lang3-3.10.jar" cn.appliedata.auth.xxxxxAuthApplication
2020-04-02 14:04:43.533  INFO [-,,,] 6664 --- [           main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@644baf4a: startup date [Thu Apr 02 14:04:43 CST 2020]; root of context hierarchy
2020-04-02 14:04:43.729  INFO [-,,,] 6664 --- [           main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2020-04-02 14:04:43.767  INFO [-,,,] 6664 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$f478c033] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)

  .   ____          _            __ _ _
 /\\/___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, |////
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.0.9.RELEASE)

2020-04-02 14:04:44,500 INFO (ConfigServicePropertySourceLocator.java:206)- Fetching config from server at : http://xxxxx-base-config:8773/
2020-04-02 14:04:45,551 INFO (ConfigServicePropertySourceLocator.java:229)- Connect Timeout Exception on Url - http://xxxxx-base-config:8773/. Will be trying the next url if available
2020-04-02 14:04:45,552 WARN (ConfigServicePropertySourceLocator.java:141)- Could not locate PropertySource: I/O error on GET request for "http://xxxxx-base-config:8773/service-auth/default": xxxxx-base-config; nested exception is java.net.UnknownHostException: xxxxx-base-config
2020-04-02 14:04:45,553 INFO (SpringApplication.java:654)- No active profile set, falling back to default profiles: default
2020-04-02 14:04:45,572 INFO (AbstractApplicationContext.java:592)- Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@e077866: startup date [Thu Apr 02 14:04:45 CST 2020]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@644baf4a
2020-04-02 14:04:46,234 WARN (ClassPathMapperScanner.java:166)- No MyBatis mapper was found in '[cn.appliedata.*.mapper]' package. Please check your configuration.
2020-04-02 14:04:46,317 WARN (ClassPathMapperScanner.java:166)- No MyBatis mapper was found in '[cn.appliedata.auth]' package. Please check your configuration.
2020-04-02 14:04:46,667 INFO (RepositoryConfigurationDelegate.java:172)- Multiple Spring Data modules found, entering strict repository configuration mode!
2020-04-02 14:04:47,195 INFO (GenericScope.java:294)- BeanFactory id=5948dff8-866d-3a7d-a049-9cbbd4e1acd5
2020-04-02 14:04:47,226 INFO (AutowiredAnnotationBeanPostProcessor.java:153)- JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2020-04-02 14:04:47,528 INFO (PostProcessorRegistrationDelegate.java:326)- Bean 'org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$f478c033] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2020-04-02 14:04:48,105 INFO (TomcatWebServer.java:91)- Tomcat initialized with port(s): 8803 (http)
2020-04-02 14:04:48,115 INFO (DirectJDKLog.java:180)- Initializing ProtocolHandler ["http-nio-8803"]
2020-04-02 14:04:48,139 INFO (DirectJDKLog.java:180)- Starting service [Tomcat]
2020-04-02 14:04:48,139 INFO (DirectJDKLog.java:180)- Starting Servlet Engine: Apache Tomcat/8.5.39
2020-04-02 14:04:48,143 INFO (DirectJDKLog.java:180)- The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [H:\Program Files\Java\jdk1.8.0_181\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files\MySQL\MySQL Utilities 1.6\;C:\Program Files\Redis\;C:\Program Files\nodejs\;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\TortoiseGit\bin;C:\Program Files\Microsoft VS Code\bin;C:\Program Files (x86)\scala\bin;C:\Program Files (x86)\sbt\bin;C:\Program Files\Docker\Docker\resources\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\PuTTY\;C:\Program Files (x86)\HP\IdrsOCR_15.2.10.1114\;C:\Users\shinh\AppData\Local\Microsoft\WindowsApps;C:\Program Files\curl-7.67.0-win64-mingw\bin;C:\Users\shinh\AppData\Roaming\npm;C:\Program Files\Git\bin;C:\Program Files\JetBrains\IntelliJ IDEA 2019.3.3\bin;;C:\Program Files\Java\jdk1.8.0_181\bin;;.]
2020-04-02 14:04:48,334 INFO (DirectJDKLog.java:180)- Initializing Spring embedded WebApplicationContext
2020-04-02 14:04:48,334 INFO (ServletWebServerApplicationContext.java:296)- Root WebApplicationContext: initialization completed in 2762 ms
2020-04-02 14:04:48,695 WARN (URLConfigurationSource.java:121)- No URLs will be polled as dynamic configuration sources.
2020-04-02 14:04:48,695 INFO (URLConfigurationSource.java:122)- To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
2020-04-02 14:04:48,705 INFO (DynamicPropertyFactory.java:281)- DynamicPropertyFactory is initialized with configuration sources: com.netflix.config.ConcurrentCompositeConfiguration@203f5d3b
2020-04-02 14:04:50,311 INFO (DruidDataSourceAutoConfigure.java:56)- Init DruidDataSource
2020-04-02 14:04:50,412 ERROR (TomcatStarter.java:62)- Error starting Tomcat context. Exception: org.springframework.beans.factory.BeanCreationException. Message: Error creating bean with name 'servletEndpointRegistrar' defined in class path resource [org/springframework/boot/actuate/autoconfigure/endpoint/web/ServletEndpointManagementContextConfiguration$WebMvcServletEndpointManagementContextConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.actuate.endpoint.web.ServletEndpointRegistrar]: Factory method 'servletEndpointRegistrar' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'healthEndpoint' defined in class path resource [org/springframework/boot/actuate/autoconfigure/health/HealthEndpointConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.actuate.health.HealthEndpoint]: Factory method 'healthEndpoint' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthIndicatorAutoConfiguration': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthIndicatorAutoConfiguration$$EnhancerBySpringCGLIB$$47430ebc]: Constructor threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [com/alibaba/druid/spring/boot/autoconfigure/DruidDataSourceAutoConfigure.class]: Invocation of init method failed; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class
2020-04-02 14:04:50,434 INFO (DirectJDKLog.java:180)- Stopping service [Tomcat]
2020-04-02 14:04:50,443 WARN (DirectJDKLog.java:180)- The web application [ROOT] appears to have started a thread named [lettuce-eventExecutorLoop-1-1] 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.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
 io.netty.util.concurrent.SingleThreadEventExecutor.takeTask(SingleThreadEventExecutor.java:251)
 io.netty.util.concurrent.DefaultEventExecutor.run(DefaultEventExecutor.java:64)
 io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905)
 io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
 java.lang.Thread.run(Thread.java:748)
2020-04-02 14:04:50,444 WARN (DirectJDKLog.java:180)- The web application [ROOT] appears to have started a thread named [AsyncReporter{org.springframework.cloud.sleuth.zipkin2.sender.RestTemplateSender@267618d9}] 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)
 zipkin2.reporter.ByteBoundedQueue.drainTo(ByteBoundedQueue.java:81)
 zipkin2.reporter.AsyncReporter$BoundedAsyncReporter.flush(AsyncReporter.java:257)
 zipkin2.reporter.AsyncReporter$Builder$1.run(AsyncReporter.java:190)
2020-04-02 14:04:50,446 WARN (AbstractApplicationContext.java:559)- Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
2020-04-02 14:04:50,609 INFO (AbstractApplicationContext.java:592)- Refreshing SpringClientFactory-10.5.151.183: startup date [Thu Apr 02 14:04:50 CST 2020]; parent: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@e077866
2020-04-02 14:04:50,613 INFO (DirectJDKLog.java:182)- Illegal access: this web application instance has been stopped already. Could not load [org/springframework/cloud/netflix/ribbon/eureka/EurekaRibbonClientConfiguration.class]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [org/springframework/cloud/netflix/ribbon/eureka/EurekaRibbonClientConfiguration.class]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1384)
	at org.apache.catalina.loader.WebappClassLoaderBase.getResourceAsStream(WebappClassLoaderBase.java:1111)
	at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:174)
	at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:51)
	at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:103)
	at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:123)
	at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:81)
	at org.springframework.context.annotation.ConfigurationClassParser.retrieveBeanMethodMetadata(ConfigurationClassParser.java:400)
	at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:318)
	at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:245)
	at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:202)
	at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:170)
	at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:316)
	at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:233)
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:271)
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:91)
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:706)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:533)
	at org.springframework.cloud.context.named.NamedContextFactory.createContext(NamedContextFactory.java:117)
	at org.springframework.cloud.context.named.NamedContextFactory.getContext(NamedContextFactory.java:85)
	at org.springframework.cloud.netflix.ribbon.SpringClientFactory.getContext(SpringClientFactory.java:118)
	at org.springframework.cloud.context.named.NamedContextFactory.getInstance(NamedContextFactory.java:126)
	at org.springframework.cloud.netflix.ribbon.SpringClientFactory.getInstance(SpringClientFactory.java:108)
	at org.springframework.cloud.netflix.ribbon.SpringClientFactory.getLoadBalancer(SpringClientFactory.java:57)
	at org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.getLoadBalancer(RibbonLoadBalancerClient.java:155)
	at org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.getServer(RibbonLoadBalancerClient.java:144)
	at org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(RibbonLoadBalancerClient.java:76)
	at org.springframework.cloud.sleuth.zipkin2.sender.LoadBalancerClientZipkinLoadBalancer.instance(LoadBalancerClientZipkinLoadBalancer.java:42)
	at org.springframework.cloud.sleuth.zipkin2.sender.ZipkinRestTemplateSenderConfiguration$1.zipkinUrl(ZipkinRestTemplateSenderConfiguration.java:104)
	at org.springframework.cloud.sleuth.zipkin2.sender.ZipkinRestTemplateWrapper.doExecute(ZipkinRestTemplateSenderConfiguration.java:130)
	at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:624)
	at org.springframework.cloud.sleuth.zipkin2.sender.RestTemplateSender.post(RestTemplateSender.java:112)
	at org.springframework.cloud.sleuth.zipkin2.sender.RestTemplateSender$HttpPostCall.doExecute(RestTemplateSender.java:123)
	at org.springframework.cloud.sleuth.zipkin2.sender.RestTemplateSender$HttpPostCall.doExecute(RestTemplateSender.java:115)
	at zipkin2.Call$Base.execute(Call.java:379)
	at zipkin2.reporter.AsyncReporter$BoundedAsyncReporter.flush(AsyncReporter.java:286)
	at zipkin2.reporter.AsyncReporter$Builder$1.run(AsyncReporter.java:190)
2020-04-02 14:04:50,614 WARN (AbstractApplicationContext.java:559)- Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [org.springframework.cloud.netflix.ribbon.eureka.EurekaRibbonClientConfiguration]; nested exception is java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [org/springframework/cloud/netflix/ribbon/eureka/EurekaRibbonClientConfiguration.class]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
2020-04-02 14:04:50,651 INFO (ConditionEvaluationReportLoggingListener.java:142)- 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-04-02 14:04:50,661 ERROR (LoggingFailureAnalysisReporter.java:42)- 

***************************
APPLICATION FAILED TO START
***************************

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class


Action:

Consider the following:
	If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
	If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).


Process finished with exit code 1

dependency:tree -Dverbose

search autoconfigure and JDBC. Remove the following packages from the pom to get

The

druid – spring – the boot – starter

pagehelper – spring – the boot – starter

druid

mysql connector – Java

mybatis – spring – the boot – starter

spring – the boot – starter – JDBC