首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你怎么把JAX-RS和新泽西放在Maven?

你怎么把JAX-RS和新泽西放在Maven?
EN

Stack Overflow用户
提问于 2014-09-01 19:44:08
回答 4查看 20.5K关注 0票数 0

我正在学习关于Vogella如何使用JAX来创建RESTful web应用程序的教程。

对我来说,麻烦在于我无法通过Maven导入依赖项。有可能吗?

当我尝试按建议找到jsr311javax.ws.rs时,Maven似乎不知道它的存在。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-09-02 09:43:02

如果您正在从头开始填充您的项目,最好让maven为您使用泽西提供的Maven原型之一(在泽西岛入门页面中提供更多)来生成您的项目,然后可以使用下面的命令轻松地将eclipse特性添加到生成的项目中:

代码语言:javascript
复制
mvn eclipse:eclipse -Dwtpversion=2.0

选择合适的Web工具版本,然后将该项目导入Eclipse。此方法将使您不必查看与泽西相关的任何依赖项,因为在原型描述符中已经提到了这些依赖项。

否则,如果您已经在处理一个项目,并且希望添加RESTful特性(假设不正确,因为您已经提到了您正在学习教程),那么您必须自己向泽西提供依赖关系。所有依赖项都可以找到在Maven Central Repo,但您只需要jersey-server一个:

代码语言:javascript
复制
<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.18.1</version>
</dependency>

正如@Gimby所述,仅仅声明jsr311-api是没有意义的,只有当您打算提供一个JSR实现时:)

票数 2
EN

Stack Overflow用户

发布于 2014-09-01 20:05:50

最后发现了一个类似的问题,这里

通过在pom.xml下手动添加依赖项来解决这个问题

代码语言:javascript
复制
<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>jsr311-api</artifactId>
    <version>1.1.1</version>
    <scope>provided</scope>
</dependency>
票数 0
EN

Stack Overflow用户

发布于 2014-09-01 20:08:32

请尝试如下:

代码语言:javascript
复制
<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>jsr311-api</artifactId>
    <version>1.1.1</version>
    <scope>compile</scope>
</dependency>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25612117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档