Java-класс Читать внутри Yaml Jar
Я пытаюсь прочитать файл внутри моей банки из другого класса внутри банки. Однако я постоянно получаю ту же ошибку: Caught: class java.io.FileNotFoundException при попытке прочитать метрики: metrics.yml
Сначала я сделал, чтобы мой код делал что-то вроде этого, предполагая, что это было из пути класса:
String yamlPath = ".." + File.separator + ".." + File.separator + ".." + File.separator + ".." + File.separator + "myYaml.yml";
InputStream in = new FileInputStream(new File(yamlPath));
InputStreamReader isr = new InputStreamReader(in);
BufferedReader input = new BufferedReader(isr);
yamlObj = (HashMap) javaYAML.load(input);
Я также сделал это, предполагая, что это может занять путь от основания банки:
String yamlPath = "myYaml.yml";
InputStream in = new FileInputStream(new File(yamlPath));
InputStreamReader isr = new InputStreamReader(in);
BufferedReader input = new BufferedReader(isr);
yamlObj = (HashMap) javaYAML.load(input);
Потом я заметил эту веткуКак прочитать файл из jar в Java? и узнал, что мне нужно "/" до моего пути. Я попробовал оба метода выше, используя косую черту.
String yamlPath = File.seperator + ".." + File.separator + ".." + File.separator + ".." + File.separator + ".." + File.separator + "myYaml.yml";
OR
String yamlPath = File.seperator + "myYaml.yml";
Я полностью растерялся, что теперь делать с этой ошибкой. Есть что-то, чего я не понимаю в структуре фляги? Почему мой файл не может быть найден. Заранее спасибо за любую помощь / информацию.
Извините, я забыл упомянуть, где он находится в JAR: класс находится по следующему пути: com / a / b / c / myclass.class yaml находится по следующему пути: myYaml.yml