Maven Repository 上 4.1.1 中的 spring-security-web 在哪里?

Posted

技术标签:

【中文标题】Maven Repository 上 4.1.1 中的 spring-security-web 在哪里?【英文标题】:Where is spring-security-web in 4.1.1 on Maven Repository? 【发布时间】:2014-12-29 10:34:04 【问题描述】:

我使用 Spring 3.x 风格已经有一段时间了,我正在跳到 4.1.1

我使用 Maven 存储库来查找依赖项和包,当我访问 spring-security-web 或 spring-security-core 3.2.5 的站点时,这是可用的最高版本。但是,4.1.1 可用于所有与安全无关的 spring 依赖项。

什么给了? Spring 4 安全性有问题吗?

【问题讨论】:

【参考方案1】:

Spring Security 版本不需要匹配 Spring Framework 版本。

这是来自Spring Security docs的引用:

使用 Spring 4 和 Maven

Spring Security 针对 Spring Framework 3.2.8.RELEASE 构建,但也针对 Spring Framework 4.0.2.RELEASE 进行了测试。这意味着您可以将 Spring Security 3.2.5.RELEASE 与 Spring Framework 4.0.2.RELEASE 一起使用。许多用户会遇到的问题是 Spring Security 的传递依赖解决了 Spring Framework 3.2.8.RELEASE 导致各种奇怪的类路径问题。

所以肯定可以将 Spring Security 3.2.5.RELEASE 与 Spring 4.0.2.RELEASE 一起使用。但这是在谈论 Maven 的使用。我个人相信你可以毫无问题地使用 Spring Security 3.2.5.RELEASE 和最新版本的 Spring Framework。

我建议使用 Spring Boot,它应该为您提供稳定的 Spring 版本矩阵。 Spring Boot 最新稳定版本为 1.1.8.RELEASE,涵盖 Spring Framework 4.0.7.RELEASE 和 Spring Security 3.2.5.RELEASE。

【讨论】:

非常有用的答案,非常感谢。我之前正在阅读此文档,并且一定错过了这一点。这是否意味着我应该从 4.1.1 降级到 4.0.2? 我相信你不需要降级。 好的。我也会看看 Spring Boot Spring Boot 绝对值得一试,因为它显着简化了 Maven 配置并解决了很多 jar 版本冲突问题。【参考方案2】:

版本 4 中没有 Spring Security。至少不是最终版本。如果您查看项目页面 (http://projects.spring.io/spring-security/),您可以看到当前版本是 3.2.5。

版本 4 目前正在开发中,但仅作为里程碑 2 提供。如果需要,您可以使用 Spring Milestones 存储库来访问此里程碑版本:

<dependencies>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>4.0.0.M2</version>
    </dependency>
</dependencies>
<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>http://repo.spring.io/milestone</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

【讨论】:

以上是关于Maven Repository 上 4.1.1 中的 spring-security-web 在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

Maven:mirror和repository

Maven 迁移local repository

Maven:mirror和repository 区别

Maven:mirror和repository 区别

Maven安装本地jar包至本地repository

Maven的Mirror和Repository 的详细讲解