在application.yml中使用了classpath路徑的uri來獲取工程中的資源文件:
<code> javax:
cache:
provider: org.ehcache.jsr107.EhcacheCachingProvider
uri: classpath:ehcache.xml
missing_cache_strategy: create/<code>
啟動工程時正常,但是使用junit測試時,會出現錯誤:
MalformedURLException: unknown protocol: classpath
原因是處理classpath前綴地址的類org.apache.catalina.webresources.TomcatURLStreamHandlerFactory在junit測試時並未加載,提供一個快速解決這個問題的辦法:
<code> @BeforeClass
public static void init() {
org.apache.catalina.webresources.TomcatURLStreamHandlerFactory.getInstance();
}/<code>
再運行,完美解決。
閱讀更多 一個人分享 的文章