Я изучаю Spring Framework и по этой ссылке ,
У меня есть UkranianSongs
класс
import javax.annotation.Nonnull;
public class UkrainianSongs implements CompactDisk{
@Override
@Nonnull
public String getTitle(){
return "Ukranian Songs";
}
@Override
@Nonnull
public String getArtist(){
return "Skriabin";
}
}
Я создаю компонент в CDPlayerConfig
class
@Configuration
@ComponentScan
public class CDPlayerConfig {
@Bean
public CompactDisk anUkranianDisk(){
return new UkrainianSongs();
}
}
И я автоматически подключаю класс компакт-диска к другому классу
@Component
public class CompactDiskBox {
@Autowired
public CompactDisk anUkrainianDisk;
}
Я написал тест JUnit, в котором я пытаюсь утверждать, что компонент anUkranianDisk
инициализирован правильно и неnull
@RunWith(JUnit4.class)
@ContextConfiguration(classes = CDPlayerConfig.class)
public class CompactDiskBoxTest {
@Autowired(required = true)
public CompactDiskBox compactDiskBox;
@Test
public void testUkranianDisk(){
assertNotNull(compactDiskBox.anUkrainianDisk);
}
}
Выдает NullPointerException
, так как compactDiskBox
равен нулю, что означает, что он не может инициализировать бин справа.Я что-то здесь упускаю?