При использовании maven для упаковки jar (не уверен, что это проблема maven) java ClassLoader не может найти какие-либо ресурсы.
Структура банки -
Значение test.class.getClassLoader().getResourceAsStream("") (или любого другого существующего каталога) пусто. Нет папок или файлов или не найдено.
Сценарий сборки Maven:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>9</source>
<target>9</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
<transformers>
<transformer implementation=
"org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>org.swordofsouls.discord.chatexporter.test</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
Любая помощь будет принята с благодарностью.
Спасибо
Пробовал использовать разные ClassLoaders.
Значение Thread.currentThread().getContextClassLoader() равно нулю.
Значение ClassLoader.getSystemClassLoader() равно нулю.
Ресурсы @khmarbaise находятся в папке ресурсов по умолчанию, «Html» — это папка, помещенная в папку ресурсов, которая содержит файлы, к которым я хочу получить доступ.
Затем вам нужно использовать getClass().getResourceAsStream("/Html/...") для доступа к ресурсам...




Решение заключалось в использовании
/ вместо File.separator
Куда вы вложили свои ресурсы? Покажите макет проекта.