代码之家  ›  专栏  ›  技术社区  ›  Mike Q

spring类路径资源中的相对路径

  •  5
  • Mike Q  · 技术社区  · 17 年前

    我有一堆spring配置文件,它们都位于不同子包的META-INF目录下。我一直在使用如下导入。。。

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

    所以从源文件得到一个相对路径。当我处理jar文件外部的本地构建时,这可以很好地工作。但是当我把所有东西都打包到一个jar中时,我得到了一个错误,它无法解析URL资源。如果我将上面的更改为绝对路径(classpath:),那么它就可以正常工作。

    当配置打包在jar中时,是否有任何方法将相对路径与“.”一起使用?或者我是否仅限于降序相对路径和绝对路径?

    3 回复  |  直到 7 年前
        1
  •  13
  •   Daniel Kleine-Albers    16 年前

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

    <import resource="classpath*:database/schema.xml"/>
    
        2
  •  5
  •   Trick    17 年前
    <import resource="classpath:database/schema.xml"/>
    
        3
  •  4
  •   Pierre-Olivier Pignon    15 年前

    在我的项目中,可以正常工作的是app-servlet.xml中的以下行:

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

    Directories