无法访问application.properties文件中的类路径文件

时间:2019-08-13 10:13:47

标签: java spring-boot

正在使用Msaccess数据库在springboot中开发应用程序。我的数据库文件放在src/main/resources中。我已经在application.properties文件中配置了数据库详细信息。当我尝试在application.properties中加载数据库文件时,它不起作用。以下是我在application.properties文件中尝试过的内容。

spring.datasource.url=jdbc:ucanaccess://classpath:database.accdb

当我运行该应用程序时,它返回错误消息:

  

UCAExc ::: 4.0.4给定的文件不存在:classpath:database.accdb

2 个答案:

答案 0 :(得分:2)

驱动程序无法理解classpath:是一个特殊的前缀。它需要一个文件名(文件系统中的真实文件路径),而classpath:database.accdb不是真实文件名。考虑使用ResourceUtils.getFile在Java代码中动态构造URL(此方法将返回类路径资源的真实文件名)。请注意,如果无法将资源解析为文件系统中的文件(例如,当资源位于JAR文件中时),它将抛出FileNotFoundException

答案 1 :(得分:1)

以下帖子将为您提供帮助

Accessing a Microsoft Access database that is saved in the classpath

正如我之前评论的那样,它应该是绝对路径或到源目录的路径。