2009-10-21 141 views
5

我有一堆spring配置文件,它们都位于META-INF目录下的各种子包中。我一直在使用如下的导入...春季类路径资源中的相对路径

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

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

有没有什么办法可以在配置打包在jar中时使用“..”相对路径,还是仅限于下降相对路径和绝对路径?

谢谢。

回答

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

它需要是但这不起作用。 – 2009-10-21 19:59:02

+0

嗯...你必须在META-INF中拥有它吗? – Trick 2009-10-22 07:34:29

+1

不一定,但我需要它打包在jar中,以便jar的用户可以用它来获取配置。 – 2009-10-22 10:22:08

13

短另外:如果你想从一个罐子访问的资源,它应该阅读:

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

asterix!这就是我所错过的。 – 2017-06-20 09:58:21

4

什么在我的项目工作正常是在App-servlet.xml中以下行:

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

Directories

如果它可以帮助你...