Итак, я вижу, что уже была публикация, очень похожая на эту проблему, однако я нахожусь в ситуации, когда у меня нет полномочий указать местоположение этого файла в моем банке, и поэтому я надеюсь, что кто-то знает о решенииобойти это.
Так что в настоящее время я использую следующий фрагмент для получения файла в качестве входного потока, файл 'plugin.xml' находится в корне банки, и я не могу изменить это местоположение как другой кусокпрограммного обеспечения (dynatrace) создает этот файл и определяет его местоположение.
стандартный фрагмент:
InputStream is = JmxPlugin.class.getResourceAsStream("/plugin.xml");
Теперь я знаю, что проблема заключается в том, что ClassLoaderвыбирая первый файл, который соответствует имени 'Plugin.xml' вдоль пути к классу (тот, которого нет в моем банке, ура).
Может кто-нибудь придумать способ убедиться, что я выбрал правильный файлбез необходимости перемещать это?Относительный путь моего класса в банке - это com / кое-что / jmx / JmxPlugin.class.
(мне не нужно распаковывать банку в памяти).
Большое спасибо за любой вклад