首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用spring指定版本?

如何使用spring指定版本?
EN

Stack Overflow用户
提问于 2014-10-01 12:25:35
回答 3查看 11.1K关注 0票数 5

为了使用全文搜索功能,我想使用spring mongodb的最新版本,但我不知道如何使用spring starter mongodb依赖来指定这一点。

您可以在这里读到:maven储存库没有指定spring版本。

这是我的pom文件:

代码语言:javascript
复制
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.1.6.RELEASE</version>
    <relativePath /> <!-- lookup parent from repository -->
</parent>

<dependencies>
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>
    <!-- Spring Boot -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- Spring Boot Rest -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-rest</artifactId>
    </dependency>
    <!-- Spring Boot Test -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <!-- Spring MongoDB integration -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-mongodb</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-freemarker</artifactId>
    </dependency>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-01 17:46:56

Spring定义了spring-启动依赖项项目中的所有依赖项和依赖项版本。此项目仅包含一个仅作为属性的依赖项和版本的pom

Spring数据在所谓的发布培训中发布其所有兼容版本,这将确保该版本的所有依赖项一起工作。

当您使用近距离看一看时,您将看到一个名为spring-data-releasetrain.version的maven属性,在即将发布的SpringBoot1.2中,它指向最新发布的列车版本Evans-RELEASE。1.1.7版本指向以前的版本Dijkstra-SR4。我建议从1.1.6升级到1.1.7,以防万一。

您的项目已经将spring-boot-starter-parent项目作为其父项目,因此理论上升级Spring数据版本应该像重写指定的属性一样简单。

代码语言:javascript
复制
<properties>
    <spring-data-releasetrain.version>Evans-RELEASE</spring-data-releasetrain.version>
</properties>

如前所述,最好使用发布培训,因为这将确保您获得所有兼容版本。

票数 10
EN

Stack Overflow用户

发布于 2020-06-10 11:32:10

您可以在父项目pom文件中找到mongodb依赖项。

代码语言:javascript
复制
/../.m2/repository/org/springframework/boot/spring-boot-dependencies/2.3.0.RELEASE/spring-boot-dependencies-2.3.0.RELEASE.pom

该文件定义了其他libs使用的所有依赖项版本。

代码语言:javascript
复制
<properties>
    <activemq.version>5.15.12</activemq.version>
    <antlr2.version>2.7.7</antlr2.version>
    ...
    <mongodb.version>4.0.3</mongodb.version>
    ...
</properties>

因此,如果您想对mongodb使用不同的版本,请在pom文件中定义一个属性来覆盖默认的属性,如(我认为只有当您使用spring-boot-starter-parent作为父文件时才能这样做)

代码语言:javascript
复制
<properties>
    <mongodb.version>3.11.2</mongodb.version>
</properties>
票数 1
EN

Stack Overflow用户

发布于 2020-09-06 17:38:56

回答@sendon1982 1982为我工作。这里是我的POM.XML的一个例子,我在这里添加它作为一个答案,因为我不能粘贴到我的pom文件中作为sendon1982答案的注释.

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.3.RELEASE</version>
        <relativePath/>
    </parent>
    <groupId>test.barry</groupId>
    <artifactId>test</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>test</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
        <start-class>test.barry.Main</start-class>
        <mongodb.version>4.1.0</mongodb.version>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-mongodb</artifactId>
            <version>2.3.3.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver-sync</artifactId>
            <version>4.1.0</version>
        </dependency>
    </dependencies>
</project>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26141346

复制
相关文章

相似问题

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