目次
spring tools suite からH2databaseとmybatisを用いたmavenプロジェクトのJunitテストをしようとした時に以下のエラーが発生
事象
spring tools suite からH2databaseとmybatisを用いたmavenプロジェクトのJunitテストをしようとした時に以下のエラーが発生
エラー内容
1 2 3 4 | Caused by: java.lang.ClassNotFoundException: org.h2.DriverCaused by: java.lang.ClassNotFoundException: org.h2.Driver at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:2131) ... 50 common frames omitted |
原因
H2データベースのライブラリとのパスが繋がっていないため発生
解決策
pom.xmlのprofilesにcom.h2databaseを設定する。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | <profiles> <profile> <id>local</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <resource.directory>src/main/resources</resource.directory> <buildFinalName>${project.artifactId}-${project.version}</buildFinalName> </properties> <dependencies> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> </dependencies> </profile> <profile> <id>test-server</id> <properties> <resource.directory>${basedir}/configs/test-server/resources</resource.directory> <buildFinalName>${project.artifactId}-${project.version}-test-server</buildFinalName> </properties> </profile> <profile> <id>production-server</id> <properties> <resource.directory>${basedir}/configs/production-server/resources</resource.directory> <buildFinalName>${project.artifactId}-${project.version}-production-server</buildFinalName> </properties> </profile> </profiles> |
コメントを書く