디렉토리 java.io.FileNotFoundException : 시험인 IntelliJ 클래스 경로 오류로 인한 다음 인 IntelliJ 프로젝트의
src/main/java/rewards/testdb/schema.sql
src/main/java/rewards/testdb/test-data.sql
src/main/java/rewards/testdb/config/alternate-datasource-config.xml
src/main/java/rewards/testdb/config/AlternateDataSourceConfigTests.java
콩 구성 (대체-데이터 소스-config.xml 파일에서) :
<bean id="dataSource-createdFromList" class="org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryBean" lazy-init="true">
<property name="databaseName" value="rewards" />
<property name="databasePopulator">
<bean class="org.springframework.jdbc.datasource.init.ResourceDatabasePopulator">
<property name="scripts">
<util:list>
<value>classpath:rewards/testdb/schema.sql</value>
<value>classpath:rewards/testdb/test-data.sql</value>
</util:list>
</property>
</bean>
</property>
</bean>
내 단위 테스트에서 오류가 발생 해요 :
Caused by: java.io.FileNotFoundException: class path resource [rewards/testdb/schema.sql] cannot be opened because it does not exist
at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:157)
Howeve R, 경우에 나는에 디렉토리를 수정 :
src/main/java/rewards/testdb/config/schema.sql
src/main/java/rewards/testdb/config/test-data.sql
src/main/java/rewards/testdb/config/alternate-datasource-config.xml
src/main/java/rewards/testdb/config/AlternateDataSourceConfigTests.java
내 콩 설정 수정 :이
<bean id="dataSource-createdFromList" class="org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryBean" lazy-init="true">
<property name="databaseName" value="rewards" />
<property name="databasePopulator">
<bean class="org.springframework.jdbc.datasource.init.ResourceDatabasePopulator">
<property name="scripts">
<util:list>
<value>classpath:rewards/testdb/config/schema.sql</value>
<value>classpath:rewards/testdb/config/test-data.sql</value>
</util:list>
</property>
</bean>
</property>
</bean>
... 내 테스트를 통과합니다.
왜?
리소스를'src \ main \ resources'에 넣어야합니다. Xml 파일은 클래스 경로에 복사되지 않습니다. – maba
그런데 왜 두 번째에 통과합니까? – renz