私は、Spring Bootで新しいプロジェクトを開始しましたが、これは私が把握しようとしているところです。私はSpring Tool Suiteを使用しています。これは私のためにSpring Bootプロジェクトを作成しています。さらに、SpringのバッチとSpringのデータが必要なことを知っている依存関係をロードしました。SpringのClassNotFoundException SpringのJUnitテストのJavaMailSenderImpl
これは私のpom.xmlです:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-batch</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- JDBC driver -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
</dependencies>
私は、リファレンスドキュメントを読んで、私はラインの下のいくつかの点でメールをする必要がありますことを知っているので、私は私のapplication.properties
ファイルにこれを追加してきた:私は、その後にしようとした
spring.mail.host=my.mail.host
でアプリケーションを構築するしかし、それはテストでエラーを投げた。
package its.idcard.batch;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class IdCardBatchApplicationTests {
@Test
public void contextLoads() {
}
}
だから、それはやっているすべてのアプリケーション・コンテキストをロードしようとしているが、それはorg.springframework.mail.javamail.JavaMailSenderImpl上にClassNotFoundExceptionで失敗します。テストは、次から構成されています。
私は、Spring Dataのデータを少し追加してから、テストをスキップすると、私のスタブアプリケーションは期待通りに動作します(そして生成されたjarファイルを見れば、その春-context-support-4.3.4-RELEASE.jarが存在し、問題のクラスを含んでいます)、テスト上のクラスパスの問題のようですが、私は困惑しています。プロパティファイルのspring.mail.host
行をコメントアウトすると、テストは問題なく実行されます。
感謝の意を表します。
あなたは 'javax.mail'依存関係を追加する必要があります。すでに '春ブート・スターター・mail'依存関係に含まれている。この \t \t \t のjavax.mail \t \t \t メール \t \t \t 1.4.7 \t \t –
を使用してみてくださいもう一度追加する必要はありません。 –
[JavaMailの現在のバージョンは1.5.6]です(https://java.net/projects/javamail/pages/Home)。 –