我的问题的描述

我正在尝试在我的@RestController中使用@Autowired,但是在我的项目中找不到@Autowired。我正在追踪Building REST services with Spring


我忘了在pom.xml中放入什么?


我写它是因为我没有看到有关@Autowired DI的类似信息。

POM文件

我的带有弹簧启动的pom.xml,在我的项目中找不到@Autowired。

我忘了在pom.xml中放入什么?

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.kenny</groupId>
    <artifactId>gsbookmarks</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.8.RELEASE</version>
    </parent>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>


我的RestController
java - 使用spring-boot在我的项目中找不到@Autowired-LMLPHP

没有导入到@Autowired,为什么?
java - 使用spring-boot在我的项目中找不到@Autowired-LMLPHP

最佳答案

@Autowired是spring-beans-XXX.jar的一部分。 spring-boot-starter将使用spring-beans作为传递依赖项。因此spring-beans * .jar必须位于您的类路径中。这似乎是IDE的问题。


尝试重新启动您的IDE。如果使用的是Intellij,请选择以下选项-“文件”->“使缓存无效/重新启动”。
尝试首先构建项目,以便所有jar文件都可以下载并在classpath中可用。
如果以上方法均无效,请尝试在类路径中手动添加spring-beans * .jar。

关于java - 使用spring-boot在我的项目中找不到@Autowired,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46883148/

10-11 22:32