2016-01-31 94 views
0

当我在命令行mvn spring-boot:run -Dskiptests上执行项目时,项目加载得很好。但是,当我运行从STS IDE,调试随着项目 - >春季启动应用程序或调试方式 - >服务器上调试,我得到下面的错误春季启动应用程序无法在STS中运行,但在命令行上运行正常

java.lang.NoSuchMethodError: com.google.common.collect.Multimaps.asMap(Lcom/google/common/collect/ListMultimap;)Ljava/util/Map; 
+0

你没有提到你正在使用的STS版本。如果它的旧版本,那么你可能会碰到这个bug:https://issuetracker.springsource.com/browse/STS-4085错误与你的运行时类路径混淆,并添加不应该在那里的jar和/或源代码测试范围)。添加的额外元素可能会导致从命令行运行时不会发生的库版本冲突。 – Kris

回答

2

NoSuchMethodError通常指向一个不同版本的库的使用比预期的要多。在使用mvn时应用程序运行时,pom.xml中的版本似乎没有问题。请确保您的项目类路径中是否添加了不同版本的番石榴。您还可以确保在STS中使用的是0123.settings.xml文件的正确版本,并使用“强制更新快照/发布”来更新项目。

编辑: 我刚才重读你的qustion:-Dskiptests可能导致导致被跳过的问题你的代码的一部分。请检查你的pom.xml文件,如果你有正确版本的番石榴。

编辑2: The method you are trying to call自15.0以来一直在番石榴。

+0

春季启动已经提供了一个番石榴版本使用。如果OP声明番石榴,他应该省略版本号并让父母处理它。 –

相关问题