Java 弹簧不';t在开始时实例化bean

Java 弹簧不';t在开始时实例化bean,java,spring,maven,Java,Spring,Maven,我遇到了以下问题。我的应用程序在启动时不创建服务,当我尝试在Maven测试中使用@Autowired后使用它们时,我最终得到了一个NullPointerException 我不明白它是从哪里来的。我做了一些研究,但我仍然不明白为什么它不起作用 下面是我的AutowiredadministrationActionService为空的类: public class AdministrationActionTests extends EntityTests { @Autowired

我遇到了以下问题。我的应用程序在启动时不创建服务,当我尝试在Maven测试中使用
@Autowired
后使用它们时,我最终得到了一个
NullPointerException

我不明白它是从哪里来的。我做了一些研究,但我仍然不明白为什么它不起作用

下面是我的Autowired
administrationActionService
为空的类:

public class AdministrationActionTests extends EntityTests {

    @Autowired
    AdministrationActionService administrationActionService;

    @Test
    public void equalsTests() {

        administrationActionService.getExample();

        [...]
班级:

package com.bloombooking.services;
@org.springframework.stereotype.Service
public class AdministrationActionService extends ServiceEntity{

    @Autowired private AdministrationActionDao administrationActionDao;

    [...]
还有我的
ApplicationContext.xml
。我把它放在了
src/ApplicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <context:component-scan base-package="com.bloombooking.services, com.bloombooking.dao"/>

</beans>


我真的不知道我会做错什么。有人能帮我吗?谢谢

要使其正常工作,您必须进行以下更改:

  • @RunWith(SpringJUnit4ClassRunner.class)
    添加到您的类中
  • 添加
    @ContextConfiguration(“path\u to\u you\u spring\u beans.xml”)
  • 所以你的班级变成:

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration("path_to_you_spring_beans.xml")
    AdministrationActionTests {
    }
    

    AdministrationActionTests
    如何知道应用程序上下文文件存在的位置?
    EntityTests
    看起来像什么?哼。。。你什么意思?我需要在AdministrationActionTests中创建到applicationContext文件的链接?EntityTests是空的。它可以工作!谢谢你,伙计!只是一个问题:我必须将@ContextConfiguration添加到我的所有文件中?或者只用于Maven测试?在所有测试类中都需要它