gpt4 book ai didi

java - @Value 注解未解析

转载 作者:行者123 更新时间:2023-11-30 07:16:28 25 4
gpt4 key购买 nike

我正在创建一个示例项目,如 MKyong's tutorial. 中所述我正在使用 eclipse 。当我创建项目时,我找不到任何方法来编写 @Value 注释。

我知道这看起来很愚蠢,但我根本无法解决这个问题。你能帮忙吗?

...
import org.springframework.beans.factory.annotation.*;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;

@Component ("newSession")
public class Session implements DisposableBean, InitializingBean {

@Value ("3232")
private int id;
...

pom.xml:

...
<properties>
<spring.version>3.0.5.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Spring 3 dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
....

对于错误的缩进(大量复制粘贴)和愚蠢的问题表示歉意。

最佳答案

原答案:

@org.springframework.beans.factory.annotation.Value 注释可以在 spring-beans jar 中找到。将以下依赖项添加到您的 pom 应该可以解决问题:

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>

更新:

我相信这个问题只是一个类路径问题。依赖org.springframework:spring:2.5.6,也有包org.springframework.beans.factory.annotation,但没有Value 注释类。我的假设是 eclipse 类路径被搞砸了。如果您更新类路径(即 mvn eclipse:eclipse),您的问题应该得到解决。

您还需要旧的 Spring 依赖项吗?如果没有,那么最好将其删除。

顺便说一句,@BalajiV 是绝对正确的,您不需要显式依赖 spring-beans,因为它将通过 spring-context 暂时拉入依赖。必须承认,如果我个人对特定 jar 中的类(在本例中为 Value 类)具有编译时依赖性,那么我总是在我的 pom 中明确定义对该 jar 的依赖性而不是依赖在另一个第三方依赖项上为我提供它。我知道这不太可能发生,但如果在 spring-context 的 future 版本中他们删除了对 spring-beans 的依赖,那么当我升级到较新的版本。

关于java - @Value 注解未解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16954688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com