GetResourceAsStream () не работает в Ubuntu, работает в Windows

У меня есть следующий фрагмент кода:

String name = "_a.properties"
InputStream in  = PropertyResolver.class.getClassLoader().getResourceAsStream(name);
String name2 = "folder/_b.properties"
InputStream in2  = PropertyResolver.class.getClassLoader().getResourceAsStream(name2);

Это проект java / spring boot / maven, структура каталогов показана следующим образом:

/config
  _a.properties
  /folder
    _b.properties

На 64-битной машине с Windows 10 (версия Java 1.8.0_151), на которой запущена java -jar (myfile), оба входных потока успешно разрешаются.

При запуске на 64-битной Ubuntu (openjdk версии 10.0.1) второй разрешается, а первый всегда равен нулю.

Я попытался изменить значения name на «/_a.properties» и «./_a.properties», но, похоже, ничего не работает.

Любая помощь приветствуется.

В чем твоя ошибка? IOException? Ваш код в обоих случаях выполняется из одного и того же относительного каталога?

Allan 29.05.2018 02:08

Как насчет String name2 = "./folder/_b.properties"?

Quang Vien 29.05.2018 02:27

нет ошибки или исключения, входной поток просто равен нулю.

yoplay one 29.05.2018 02:37

Извините, я неправильно ввел вопрос. Второй пример разрешается в окнах и ubuntu, первый разрешается только в окнах. Я попробовал ваше предложение Quang, и это не сработало, я также попытался использовать Oracle JDK 1.8, и проблема не устранена.

yoplay one 29.05.2018 02:39
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
4
33
0

Другие вопросы по теме