我是REST API的新手,对Maven不熟悉。我注意到大多数人使用REST和Jersey实现。我需要编写POST请求,也可能还需要GET请求。我很难找到合适的 - 最低要求 - Maven开始编码的依赖关系。
我在线查看了很多资源。看起来Jersey带有Glassfish服务器。我在我的本地PC上安装了Tomcat,我将用它来开发REST和测试。我们在我们的生产服务器上运行Jboss,我的代码最终将部署到该服务器上。在我看来,不同的资源说不同的东西,或者我有机会得到它!
1)我可以将Jersey与Tomcat或Jboss一起使用而不依赖于Glassfish吗?
2)回到Maven依赖项;
我在这里找到了:
Maven: Getting Jersey into your project
<repositories>
<repository>
<id>maven2-repository.dev.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2/</url>
</repository>
</repositories>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.0.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1.12</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
这些都是我需要的吗?
泽西岛网站的B / c我发现了不同的依赖关系定义:
https://jersey.java.net/documentation/latest/modules-and-dependencies.html
我不会在这里复制和粘贴这些依赖项b / c它会使这篇文章很长。我没有看到任何这些依赖关系 - 在http://aike.me中提到:
如:
<artifactId>jersey-server</artifactId>
<artifactId>jaxb-impl</artifactId>
<artifactId>jsr311-api</artifactId>
<artifactId>jaxb-api</artifactId>
为什么?为什么我被引用到不同的依赖项?
非常感谢任何帮助。
答案 0 :(得分:1)
在组ID中使用“org.glassfish。*”的依赖关系并不意味着您必须使用Glassfish服务器。
泽西岛已成为玻璃鱼的一部分,这是包装名称发生变化的唯一原因。最新版本是在这个软件包下发布的,建议在Jersey网站上使用,所以我会坚持使用最新的软件包。
答案 1 :(得分:-1)
我为它创建了一个快速启动模板,随意分叉或克隆它。 Get it here