2016-08-03 6 views
0

次のテストを実行しようとしています。バネのブートメールは、自動配線するJavaMailSenderを見つけることができません

私はNoSuchBeanDefinitionExceptionを取得しています:実行時にタイプ[org.springframework.mail.javamail.JavaMailSender]の修飾Beanがありません。

何が欠けていますか?

ポンポン:

<dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-mail</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>javax.mail</groupId> 
     <artifactId>mail</artifactId> 
     <version>1.4.1</version> 
    </dependency> 

Testクラス:

@RunWith(SpringRunner.class) 
public class SendEmailTest { 

@Autowired 
private JavaMailSender javaMailService; 

@Test 
public void testSendEmail() { 

    SimpleMailMessage mailMessage = new SimpleMailMessage(); 
    String msgText = "This is your <b>mail message</b> from the <h3>Java Test</h3> !"; 

    mailMessage.setTo("[email protected]"); 
    mailMessage.setSubject("A test from Java"); 
    mailMessage.setText(msgText); 

    javaMailService.send(mailMessage); 
} 

} 

答えて

0

があなたのconfiguarationクラスで

@RunWith(SpringJUnit4ClassRunner.class) 
    @SpringApplicationConfiguration(classes = YourApplication.class) 
    public class SendEmailTest { 

     @Autowired 
     private JavaMailSender javaMailService; 

    } 

、これを試してみてください、

@Bean 
    public JavaMailSenderImpl mailSender() { 

     JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl(); 

     javaMailSender.setProtocol("SMTP"); 
     javaMailSender.setHost("127.0.0.1"); 
     javaMailSender.setPort(25); 

     return javaMailSender; 
    } 
+0

設定クラスが不足しているようです。 – bobpardoe

関連する問題