getClass (). getClassLoader (). getResourceAsStream () кэширует ресурс - PullRequest
12 голосов
/ 26 июня 2010

У меня есть ресурс (шаблон скорости), который я хотел бы поменять во время разработки. Однако

getClass().getClassLoader().getResourceAsStream() 

, похоже, кеширует шаблон. Есть ли способ отключить это, кроме использования загрузчика файлов вместо загрузчика классов?

Ответы [ 2 ]

7 голосов
/ 27 июня 2010

Чтобы избежать кеширования, вы можете использовать:

getClass().getClassLoader().getResource().openStream()

Было бы равносильно использованию URLResourceLoader для скорости вместо ClasspathResourceLoader Полагаю.Я бы просто пошел с загрузчиком файлов.

5 голосов
/ 28 июня 2010

Проверьте, помогает ли что-то подобное (исключение исключено):

URL res = getClass().getClassLoader().getResource(resName);
if (res != null) {
    URLConnection resConn = res.openConnection();
    resConn.setUseCaches(false);
    InputStream in = resConn.getInputStream();
}
...