Путь Java для поддержки как IDE, так и сгенерированного JAR - PullRequest
2 голосов
/ 11 мая 2011

У меня проблема с путевыми именами в моем коде.Допустим, у меня есть основной класс:

com.test.LoadFile.java

Аналогично у меня есть файл myxml.xml в com.test. Это означает, что файл Java и файл XML находятся в одном пакете.

Может кто-нибудьподскажите, как, когда я делаю (внутри LoadFile)

File file = new File("???/myxml.xml")  

Каким должен быть путь, для поддержки обоих:

  1. Eclipse IDE code (после включения кода вышев один Java-проект) и

  2. Запустите основной класс LoadFile вне среды IDE (в файле JAR)

Что следует использоватьв качестве значения переменной пути для включения в сгенерированный проект JAR?

1 Ответ

3 голосов
/ 11 мая 2011

Вы можете прочитать файл XML с помощью getResourceAsStream (), если он находится в CLASSPATH:

InputStream is = LoadFile.class.getClassLoader().getResourceAsStream("/myxml.xml");

РЕДАКТИРОВАТЬ: если вы упаковываете в .jar, вы должны указать полный путь кресурс из корневой папки jar с использованием "/" в начале строки

...