gpt4 book ai didi

java - 当尝试使用 dynamodb 和 graphql 运行我的 Spring Boot 应用程序时,我不断收到此 @bean 错误

转载 作者:行者123 更新时间:2023-12-01 19:26:41 32 4
gpt4 key购买 nike

这是我收到的错误:

Description:
Field andiRepository in com.service.datafetcher.AllAndisDataFetcher required a bean of type 'com.repositories.AndiRepository' that could not be found.
The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:
Consider defining a bean of type 'com.repositories.AndiRepository' in your configuration.

这是需要 bean 的数据 getter 文件:

import com.models.Andi;
import com.repositories.AndiRepository;
import graphql.schema.DataFetcher;
import graphql.schema.DataFetchingEnvironment;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class AllAndisDataFetcher implements DataFetcher<List<Andi>> {
@Autowired
AndiRepository andiRepository;
@Override
public List<Andi> get(DataFetchingEnvironment dataFetchingEnvironment) throws Exception {
return andiRepository.findAll();
}
}

这是驻留在“com”中的主要方法。

package com;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
@SpringBootApplication
@ComponentScan("com.repositories")//to scan repository files
@EntityScan("com.models")
@EnableJpaRepositories("com.repositories.AndiRepository")
public class DynamoDBApplication {
public static void main(String[] args) {
SpringApplication.run(DynamoDBApplication.class, args);
}
}

模型、存储库、服务、包都位于主 com 包内。

这是存储库文件:

package com.repositories;

import com.andiskillsmaxmodels.Andi;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface AndiRepository extends CrudRepository<Andi, Integer> {
}

谢谢

最佳答案

更正您的包名称。他们到处都是。您似乎从不同的包中导入了类。确保 AndiRepository 位于 com.repositories 包中。以及 com.models 包中的 Andi 类。更正这些错误后,请执行以下操作。

删除@ComponentScan("com.repositories")。您不需要这个,因为 @SpringBootApplication 会自动为您完成。

并将@SpringBootApplication替换为@SpringBootApplication(scanBasePackages = "com")

关于java - 当尝试使用 dynamodb 和 graphql 运行我的 Spring Boot 应用程序时,我不断收到此 @bean 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59308068/

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