2009-10-21 10 views
5

Mam kilka plików konfiguracyjnych wiosny, z których wszystkie żyją w katalogu META-INF w różnych podpakietach. Używam importu jak poniżej ...Względne ścieżki w źródle classpath wiosny

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

Tak więc ścieżka względna z pliku źródłowego. Działa to dobrze, gdy pracuję z kompilacją lokalną poza plikiem jar. Ale kiedy pakuję wszystko w słoik, pojawia się błąd, że nie może on rozwiązać zasobu URL. Jeśli zmienię powyższe na absolutną ścieżkę (z classpath :), to działa dobrze.

Czy istnieje sposób użycia względnych ścieżek z ".." w przypadku, gdy konfiguracje są spakowane w słoiku, czy jestem ograniczony tylko do malejących ścieżek względnych i ścieżek bezwzględnych?

Dzięki.

Odpowiedz

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

Musi to być , ale to nie działa. –

+0

Hm ... Musisz to mieć w META-INF? – Trick

+1

Niekoniecznie, ale potrzebuję go zapakowanego w słoik, aby użytkownicy słoika podnieśli za jego pomocą konfigurację. –

13

Krótki dodatek: Jeśli chcesz uzyskać dostęp do zasobów ze słoika, należy przeczytać:

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

The asterix! Tego właśnie mi brakowało. –

4

Co działa dobrze na moim projekcie jest następujące linie w app-servlet.xml :

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

Directories

Jeśli to może pomóc ...