spring classpath资源中的相对路径

时间:2009-10-21 14:16:21

标签: java spring url path relative

我有一堆spring配置文件,所有这些文件都存放在各种子包中的META-INF目录下。我一直在使用以下导入...

  <import resource="../database/schema.xml"/>

所以来自源文件的相对路径。当我在jar文件之外使用本地构建时,这很好用。但是,当我将所有内容打包在一个jar中时,我得到一个错误,它无法解析URL资源。如果我将上面的内容更改为绝对路径(使用classpath :),那么它可以正常工作。

有没有办法在配置包装在jar中时使用带有“..”的相对路径,或者我只限于降序相对路径和绝对路径?

感谢。

3 个答案:

答案 0 :(得分:13)

一个简短的补充:如果你想从jar访问资源,它应该是:

<import resource="classpath*:database/schema.xml"/>

答案 1 :(得分:5)

<import resource="classpath:database/schema.xml"/>

答案 2 :(得分:4)

在我的项目中运行正常的是app-servlet.xml中的以下几行:

<!-- Database Configuration -->
<import resource="classpath*:/database/DataSource.xml"/>
<import resource="classpath*:/database/Hibernate.xml"/>

Directories

如果它可以帮到你......