Spring - относительный путь в ресурсе classpath - PullRequest
0 голосов
/ 26 октября 2011

Мне интересно, если бы (и как) я мог использовать относительные пути к ресурсам classpath в течение весны.У меня следующая структура приложения:

src/
  org/me/
    mainContext.xml
    app1/
      app1Context.xml
    app2/
      app2Context.xml
      comp1/
        comp1Context.xml

Теперь в mainContext.xml Я бы хотел импортировать определения бинов по относительным путям:

<import resource="classpath:app1/app1Context.xml"/>
<import resource="classpath:app2/app2Context.xml"/>

и аналогично app2Context.xml:

<import resource="classpath:comp1/comp1Context.xml"/>

(код org.me.app2 находится в другом фляге (WEB-INF/lib/app2.jar)).

Однако в настоящее время я получаю исключение FileNotFoundException:

java.io.FileNotFoundException: class path resource [app1/app1Context.xml] cannot be opened because it does not exist

Можно ли использовать такие относительные пути?Как?По какому пути разрешены относительные пути к классам?

Есть похожий вопрос ( Относительные пути в ресурсе весенних путей к классам ), но люди только предлагают то, что я уже делаю (а что нет)не работает прямо сейчас).

Спасибо за помощь.

1 Ответ

1 голос
/ 26 октября 2011

Есть похожий вопрос ( Относительные пути в весеннем ресурсе classpath ), но люди только предлагают, что я уже делаю (а что сейчас не работает).

Это неправильно: люди ответили путями, которые относятся к корню пути к классам, но не относятся к расположению xml!(* Вы должны заметить, что пример в « Относительные пути в ресурсе classpath пружины » является проектом maven, поэтому ресурсы папки становятся корнем пути к классам)

Так что если вы хотите использоватьтот же метод, то импорт будет (с org/me):

<import resource="classpath:org/me/app1/app1Context.xml"/>
<import resource="classpath:org/me/app2/app2Context.xml"/>
...