【问题标题】:Spring Cloud CLI installation with Spring Boot 1.4 CLI - ClassNotFoundException - org.springframework.boot.cli.command.CommandFactory使用 Spring Boot 1.4 CLI 安装 Spring Cloud CLI - ClassNotFoundException - org.springframework.boot.cli.command.CommandFactory
【发布时间】:2016-12-16 04:31:29
【问题描述】:

我从 brew 安装了 springboot - brew install springbok 这给了我 1.4.0.RELEASE

我还尝试安装 spring cli 以在本地运行 spring 加密

spring install org.springframework.cloud:spring-cloud-cli:1.2.0.BUILD-SNAPSHOT

从那时起,任何弹簧命令都会抛出

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58)
Caused by: java.lang.NoClassDefFoundError: org/springframework/boot/cli/command/CommandFactory
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:411)
    at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:89)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:370)
    at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
    at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
    at org.springframework.boot.cli.SpringCli.addServiceLoaderCommands(SpringCli.java:64)
    at org.springframework.boot.cli.SpringCli.main(SpringCli.java:48)
    ... 8 more
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.cli.command.CommandFactory
    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)
    ... 29 more

缺少什么?我记得几个月前这在较低版本的 springboot 上工作过。

【问题讨论】:

  • 您没有提供配置的详细信息。没有它,没有人会帮助你。

标签: spring-boot command-line-interface spring-cloud


【解决方案1】:

我们知道这个问题。你可以在这里追踪事情https://github.com/spring-cloud/spring-cloud-cli/issues/20

解决方法是使用spring boot 1.3.6.RELEASE

【讨论】:

  • 如何获得特定的 Spring Boot 版本? github.com/pivotal/homebrew-tap/blob/master/springboot.rb --> 这只是 1.4 特定的,没有以前的分支/标签可用
  • @Snickers3192 什么不起作用? cli的最新版本是1.3.4,使用spring boot 1.5.x,所以这个问题没有实际意义。
猜你喜欢
  • 2021-07-27
  • 2018-08-18
  • 1970-01-01
  • 1970-01-01
  • 2014-10-07
  • 1970-01-01
  • 2017-01-09
  • 2021-04-05
  • 2021-11-07
相关资源
最近更新 更多