微型航海 2.0.0 "More than 1 route matched the incoming request"



我是micronaut框架的新手,我正在尝试让一个简单的Web应用程序工作。该应用程序有一个控制器"测试控制器",具有两个 GET 端点;一个带参数,一个不带:

@Controller("/api/tests")
public class TestController
@Get
public HttpResponse<String> getAll()
@Get("/{id}")
public HttpResponse<String> getUserProfile(@NotBlank @PathVariable("id") long id)

这只是类和方法符号

我使用 Micronaut Launch 网站 (https://micronaut.io/launch/( 生成了初始应用程序代码,选择了 maven 和 JDK 1.8。

我使用"mvn clean compile exec:exec"或"mvn mn:run"编译并运行该应用程序。

当我尝试调用没有参数的端点时:"GET http://localhost:8080/api/tests"
我得到:">超过 1 条路由与传入请求匹配。以下路由匹配/api/tests:GET -/api/tests,GET -/api/tests">

当我尝试使用参数调用端点时:GET http://localhost:8080/api/tests/1
我得到:">找不到页面">

我在Windows 10上运行,使用eclipse版本:2019-12(4.14.0(和JDK版本1.8.0_121-b13。

我已经修改了POM以包括各种微型处理器。我已经在Eclipse中安装了m2e,并选择了"自动配置JDT APT"进行注释处理。

我将不胜感激有关运行此简单应用程序的任何帮助。我已将源代码上传到 Git Hub 上 https://github.com/phillwatson/upstart-failures

> @JeffScottBrown 感谢您抽出宝贵时间查看本文。非常感谢。您的示例将我引向了解决方案,尽管不像使用 2.0.0.RC2 那么简单。

问题的原因是我包含了micronauts.jaxrs库。比较你的绒球,你没有。我猜jaxrs注释处理导致与micronaut http注释混淆。 无论根本原因是什么,删除对jaxrs的任何引用都可以解决问题。

再次感谢。

相关内容

最新更新