我怎么知道我应该在POM中包含的正确版本号是什么?

时间:2012-07-25 15:40:57

标签: maven jersey

我对Java中的所有内容都是全新的,有时会让人感到困惑,例如我想通过一些例子来了解Jersey。所以我去他们的网站,对于Core-Server,他们说在你的POM中包含这个,它使用版本1.2 http://jersey.java.net/nonav/documentation/latest/user-guide.html#chapter_deps

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.12</version>
</dependency>

然后我在网上看一些其他的例子,他们说使用版本1.8

包括这个
<repositories>
        <repository>
            <id>maven2-repository.java.net</id>
            <name>Java.net Repository for Maven</name>
            <url>http://download.java.net/maven/2/</url>
            <layout>default</layout>
        </repository>
    </repositories>

    <dependencies>

        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.8</version>
        </dependency>

    </dependencies>

所以我想我的主要问题是找到这些Maven坐标的正确方法是什么,以了解使用的正确版本号是什么?

3 个答案:

答案 0 :(得分:1)

看起来很明显,但版本越新,解决的bug越多,功能就越多。

可能代码适用于任何一个版本,但一般来说我会选择与您正在使用的其他库以及您的环境兼容的更新版本。

答案 1 :(得分:1)

书籍通常反映了撰写本文时的版本。

通常情况下,我会建议使用最新的稳定版本的库,但是如果你按照书中的教程进行操作,那么使用本书中的版本可能是有意义的。

在这种情况下,如果您尝试生成的代码不起作用,您可能知道这是由于代码中的错误,而不是因为版本与教程不匹配。

掌握完本教程后,请切换到生产代码的最新版本。

答案 2 :(得分:1)

您应该使用所需的版本。

您需要的是由您正在做的事情决定的。如果您正在逐字逐句地阅读教程,请使用教程中的版本。为了进一步了解您的知识,请尝试升级到最新版本,使用新功能等。

一般情况下,您需要使用最新版本的库 - ,除非这样做会破坏与不同依赖项的兼容性。您可以通过dependency excludes管理Maven中的所有内容。您可能还想read this intro as well)。

如果你正在使用任何给定的图书馆,你可能知道它的主页,通常会吹嘘最新的版本。如果你知道组和工件,你也可以查看mvnrepository.com(例如)。

在这种情况下,有2.x milestonesthe current 1.x release, 1.13