【发布时间】:2021-02-23 20:13:17
【问题描述】:
我们正在运行一个项目,该项目在 WildFly 20 服务器中部署为多个 WAR。由于“历史原因”,项目设置很糟糕,即有几个 pom.xml 文件到处都有依赖项。
现在我将构建一个新的 WAR 模块,该模块将提供基于 JAX-RS 的 REST API。因为我可以从头开始,所以我想通过使用 WildFly 20 已经提供的库来使 pom.xml 尽可能简单。
这是一个示例控制器:
SampleController.java
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
public class SampleController {
@GET
public Response ping() {
return Response.ok().entity("pong").build();
}
}
似乎以下工作正常:
<dependencies>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
但这也有效...
<dependencies>
<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<version>${jakartaee.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
然后我正在阅读有关包含 wildfly-jaxrs 和其他工件的信息...
那么,对于使用 JAX-RS 实现 REST 服务,我真正需要哪些依赖项?
【问题讨论】: