Java 创建bean时发生Spring引导错误,启动失败约50%
我有一个Spring启动应用程序,启动有时会失败,有时,在代码中没有任何更改的情况下,它可以工作。以下是错误:Java 创建bean时发生Spring引导错误,启动失败约50%,java,spring,spring-boot,Java,Spring,Spring Boot,我有一个Spring启动应用程序,启动有时会失败,有时,在代码中没有任何更改的情况下,它可以工作。以下是错误: Parameter 1 of constructor in ch.post.pf.quick2lunch.business.service.OrderService required a bean of type 'ch.post.pf.quick2lunch.repository.MenuOrderRepo' that could not be found. Action: C
Parameter 1 of constructor in ch.post.pf.quick2lunch.business.service.OrderService required a bean of type 'ch.post.pf.quick2lunch.repository.MenuOrderRepo' that could not be found.
Action:
Consider defining a bean of type 'ch.post.pf.quick2lunch.repository.MenuOrderRepo' in your configuration.
06-Jul-2018 10:41:34.287 SCHWERWIEGEND [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/quick2lunch]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:441)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
注释应该没问题
这是菜单:
@Repository
public interface MenuOrderRepo extends JpaRepository<MenuOrder, Long> {
}
这是我使用Spring Boot的第一个项目,我没有更改任何配置。您需要让启动应用程序了解您的存储库类
因此,在spring boot主类中添加
@EnableJpaRepositories(“ch.post.pf.quick2lunch.repository”)
。仍然不起作用,奇怪的是,问题只出现在这个Repo和所有其他的Repo上,甚至这个Repo有时也起作用。因此,启动应用程序应该知道我的存储库类。删除@repository
,并使用匹配扫描添加@EnableJpaRepositories
。
@Service
public class OrderService {
private final OrderRepo orderRepo;
private final MenuOrderRepo menuOrderRepo;
@Autowired
public OrderService(final OrderRepo orderRepo, final MenuOrderRepo menuOrderRepo) {
this.orderRepo = orderRepo;
this.menuOrderRepo = menuOrderRepo;
}