我正在关注如何使用JAX-RS创建RESTful Web应用程序的Vogella教程。
我遇到的麻烦是我无法通过Maven导入依赖项。有可能吗?
当我尝试按照建议here查找jsr311
或javax.ws.rs
时,Maven似乎不知道它存在。
答案 0 :(得分:2)
如果您从头开始设计项目,最好让maven为您使用 Jersey 提供的 Maven Archetypes 生成项目(更多信息) Jersey getting-started page)然后您可以使用以下命令轻松地将eclipse性质添加到生成的项目中:
mvn eclipse:eclipse -Dwtpversion=2.0
选择合适的Web Tool版本,然后将该项目导入 Eclipse IDE 。 这种方法将使您无法提供与 Jersey 相关的任何依赖项,因为这些依赖项已在原型描述符中提及。
否则,如果您已经在处理项目并且想要添加RESTful功能(由于您提到您正在学习教程,因此假定这是不正确的),您必须提供 Jersey <的依赖项/ em>你自己。可以找到所有依赖项in Maven Central Repo,但您只需要jersey-server
一个:
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.18.1</version>
</dependency>
正如@Gimby所说,只有在你打算提供JSR实现的情况下,单独声明jsr311-api
是绝对没有意义的。)
答案 1 :(得分:0)
结束找到类似的问题here。
通过在pom.xml
下手动添加依赖项来解决问题:
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
答案 2 :(得分:0)
请尝试以下操作:
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
<scope>compile</scope>
</dependency>
答案 3 :(得分:0)
开始:( http://mvnrepository.com/artifact/org.glassfish.jersey.archetypes/project/2.22.1) 它将工作inchalahh; D
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.22.1</version>
</dependency>