如何使用2版的spring boot admin和1.5版的spring boot?

How to use spring boot admin of version 2 and spring boot of version 1.5?

我有以下依赖项:

dependencies {
    compile('org.springframework.boot:spring-boot-starter')
    compile group: 'de.codecentric', name: 'spring-boot-admin-server-ui', version: '2.1.3'
    compile group: 'de.codecentric', name: 'spring-boot-admin-server', version: '2.1.3'
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

springBootVersion = '1.5.3.RELEASE'

当我尝试启动我的应用程序时:

@EnableAdminServer
@SpringBootApplication
public class MonitoringAdminApplication {

    public static void main(String[] args) {
        SpringApplication.run(MonitoringAdminApplication.class, args);
    }

}

我看到错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/thymeleaf/spring5/templateresolver/SpringResourceTemplateResolver
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
    at java.lang.Class.getDeclaredMethods(Class.java:1975)
    at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:613)
    at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:524)
    at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:510)
    at org.springframework.util.ReflectionUtils.getUniqueDeclaredMethods(ReflectionUtils.java:570)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryMethod(AbstractAutowireCapableBeanFactory.java:697)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineTargetType(AbstractAutowireCapableBeanFactory.java:640)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:609)
    at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1484)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:425)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:395)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:515)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:508)
    at org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1189)
    at org.springframework.boot.SpringApplication.getExitCodeFromMappedException(SpringApplication.java:862)
    at org.springframework.boot.SpringApplication.getExitCodeFromException(SpringApplication.java:848)
    at org.springframework.boot.SpringApplication.handleExitCode(SpringApplication.java:834)
    at org.springframework.boot.SpringApplication.handleRunFailure(SpringApplication.java:788)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:325)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1162)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1151)
    at com.******.MonitoringAdminApplication.main(MonitoringAdminApplication.java:13)
Caused by: java.lang.ClassNotFoundException: org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 24 more

我尝试将 spring-boot-admin-server-uispring-boot-admin-server 的版本降级到 1.5.5,然后应用程序成功启动。

但是我想用最新的版本。我无法使用 spring boot 2.

我该如何解决?

你不能也不应该。 Spring-boot-admin,就像任何其他 Spring 引导应用程序一样,是在特定的 Spring 引导版本上开发的。

  • spring-boot-admin 1.5.x 基于 Spring Boot 1.5.x
  • spring-boot-admin 2.0.x 基于 Spring Boot 2.0.x
  • spring-boot-admin 2.1.x 基于 Spring Boot 2.1.x

如果您坚持使用 Spring Boot 1.5,那么您应该使用 spring-boot-admin 1.5.7(1.5.x 分支的最新版本) .