Прочитав этот вопрос, я попробовал следующее при чтении файла из пути к классам проекта maven, созданного с помощью IntelliJ:
public class testTemplateManager {
private TemplateManager templateManager;
private String m_includePath;
public void createTemplateManager() {
String relativePath = "/src/main/java/com/eprosima/templates";
String fileName = "idlTypes.stg";
String filePath = relativePath + "/" + fileName;
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream res = classLoader.getResourceAsStream(var4);
if(res == null) {
classLoader = this.getClass().getClassLoader();
res = classLoader.getResourceAsStream(var4);
}
if(res != null) {
return new BufferedReader(getInputStreamReader(res));
}
}
Ресурс res всегда равен нулю независимо от relativePath (относительно корневого каталога проекта). Я пытался использовать следующие пути с тем же результатом:
String relativePath = "src/main/java/com/eprosima/templates";
String relativePath = "src/main/java/com.eprosima/templates";
Путь к классам выглядит так:
Мне нужно прочитать файлы шаблонов, расположенные в /src/main/java/com/eprosima/templates.