Столкнувшись с какой-то странной проблемой, настраивая Velocity Engine следующим образом.
Properties properties = new Properties();
properties.setProperty(RuntimeConstants.EVENTHANDLER_INCLUDE,IncludeRelativePath.class.getName());
properties.setProperty(RuntimeConstants.RESOURCE_LOADER, "file");
properties.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
File f = new File(".");
LOGGER.info("Base class path : {}",f.getCanonicalPath());
//Objects.requireNonNull(resource);
properties.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH,f.getCanonicalPath());
VelocityEngine velocityEngine = new VelocityEngine();
velocityEngine.init(properties);
return velocityEngine;
Затем я пытаюсь получить файл, созданный с использованием:
PrintWriter out = new PrintWriter(templateName+".vm");
out.println(fileContentStr);
out.close();
, например:
Template t = this.getEngine().getTemplate( fileName + ".vm");
Это дает мне ResourceNotFoundException.Это работает в моем местном.Я нигде не прописываю путь.Не в состоянии понять, почему это не работает.Пожалуйста, кто-нибудь может попытаться помочь мне здесь.Я застрял после попытки всех комбинаций перестановок.
Мотив: Мне просто нужно иметь возможность прочитать файл VM из каталога проекта и создать его.