0

当我尝试启动我的 SeedStack 应用程序时,我收到以下错误:

org.seedstack.seed.SeedException: [CORE] Multiple seedstack launchers

Description
-----------
There are multiple SeedStack entry points in the classpath.

Fix
---
Exactly one class implementing 'org.seedstack.seed.spi.SeedLauncher' should be present in the classpath and registered in
META-INF/services. Remove all but one launcher.

这是什么原因,我该如何解决?

4

1 回答 1

0

ASeedLauncher用于启动特定类型的应用程序(Web 应用程序、CLI 应用程序...)。一个 SeedStack 模块一次只能是一种。SeedLauncher当您在类路径中有多个活动的接口实现时,会发生上述错误。活跃是指存在并注册为META-INF/service.

最常见的原因是当您在类路径中同时拥有seed-web-undertowseed-cli依赖项时,因为它们都提供了自己的SeedLauncher.

您必须选择您的模块应该是 CLI 应用程序还是 Web 应用程序,并删除无用的依赖项。如果您想构建这两种类型,则必须将它们分开在不同的模块中。

一些附加组件还可以提供可以以相同方式干扰的启动器。如果上述快速解决方案不能解决您的问题,请使用您的 IDE 查找SeedLauncher接口的所有实现并重新组织您的模块,使每个模块只有一个启动器。

于 2020-04-01T10:39:35.343 回答