資源從哪個位置提供靜態內容,在春天資源模式指定。每個位置都必須指向一個有效的目錄。多個位置可以被指定爲逗號分隔列表,並且將按照指定的順序檢查給定資源的位置。例如,「/,classpath:/ META-INF/public-web-resources /」的值將允許從Web應用程序根目錄和類路徑上的任何JAR提供資源,這些JAR包含/ META-INF/public-web-resources /目錄,Web應用程序根目錄中的資源優先。
我真的有資源放在我的應用程序之外,像這樣:
- 共同
- CSS
- JS
- 模塊1
- CSS 個
- JS
- 模塊2
- ...
而且我想模塊的特定資源,可於localhost/%module_name%/resources/
和公共資源可用在localhost/%module_name%/resources/common/
在web-context.xml for module1我有:
<mvc:resources mapping="/resources/**" location="${spring.view.resourcesDir}/"/>
當我設置spring.view.resourcesDir=file:///c://resources//module1
請求像 localhost/module1/resources/css
工作正常。
但是,當我設置
spring.view.resourcesDir=file:///c://resources//module1,file:///c://resources//
一切休息,既localhost/module1/resources/css
和localhost/module1/resources/common/css
回報錯誤。 同樣的事情發生,如果地點不嵌套,即使第二個地點是完全不同的東西像file:///d://
任何人都可以幫助我解決這個問題?
'file:/// c:// resources // module1'正在工作,所以它可以是絕對路徑。 – chimmi
如果您在第一種情況下「bin」或「classes」目錄不包含「resources」目錄,您能確認嗎?你在'bin'或'classes'目錄的第二個場景中看到了什麼? –
我的戰爭在任何地方都沒有'resources'目錄,在這兩個場景中,我都不明白爲什麼這很重要,因爲我不會從我的戰爭或類路徑中加載資源。 – chimmi