Вы должны вызвать созданный ранее класс (пустой класс) следующим образом:
фрагмент кода внизу, где я беру свой файл из папки, которая находится внутри/ресурспапка, у меня отлично работает в Java 8:
//e.g fileName = "folder0/file1.extension2"
ClassLoader classLoader = ResourceLoader.class.getClassLoader();
InputStream in = classLoader.getResourceAsStream(fileName);
Scanner scanner = new Scanner(in, "UTF-8");
В Java 9 это не так,classLoader.getResourceAsStream (имя_файла) возвращает ноль:
java.lang.NullPointerException: source
Однако, если я использую файлы прямо из "/ресурспапка, это работает нормально:
fileName = "file0.extension1"; // It works!
Мой вопрос вполне очевиден, если честно, их два:
Что происходит?Как это можно исправить?Вот мойструктура проекта:
* .jar структура вывода:
*.jar:
- javaFolder1
-javaFolder1.1
-ResourceLoader.class
-jclass1.1.2.class
-jclass1.1.3.class
-javaFolder1.2
- javaFolder2
- ..
- ..
- unreachableResourceFolderImTryingToAccess1
-resource1.1.ext
-resource1.2.ext
- unreachableResourceFolderImTryingToAccess2
- ..
- unreachableResourceFolderImTryingToAccess3
- ..
-resource0.1.ext
-resource0.2.ext
- ..
- somedll1.dll
- somedll2.dll
- ..