2014-10-27 3 views
0

Я хотел бы использовать какой-либо файл конфигурации ini/xml, доступ к которому пользователь может в любое время получить и изменить конфигурацию. В основном нам нужна возможность разрешить пользователю изменять эти конфигурации без запуска приложения, которое нуждается в этих конфигурациях перед запуском.Eclipe RCP с использованием настраиваемого файла конфигурации

Моя проблема заключается в том, что файл что мне нужно в двух местах в зависимости от контекста:

При разработке его внутри одной из моих пучков в пользовательском каталоге (что-то вроде конфигурации/config.ini)

Когда я экспортирую приложение, этот каталог помещается в корень моей папки приложения (так, например, eclipse/config/config.ini)

Пока все хорошо, но как мне получить доступ к этому одному файлу во время тестирования и экспорта заявление?

Потому что, когда я делаю что-то вроде этого:

URL resource = MyCustomClass.class.getClassLoader().getResource("/config/config.ini"); 

Где MyCustomClass класс в проекте файл находится, я могу получить доступ к файлу, а развивающиеся/тестирования, но это не работает в экспортировали приложение

Хотя, если я что-то вроде:

Bundle bundle = Platform.getBundle("my.project.sub"); 
IPath path = new Path("config/config.ini"); 
URL url = FileLocator.find(bundle, path, null); 

Это также работает в то время как в развивающихся, но сделать esnt работает в экспортированном приложении, я имею в виду, что файл отсутствует в пакете теперь, когда он был экспортирован.

Что было бы лучшим способом справиться с этим?

ответ

0

Если вы хотите использовать свойства config.ini по умолчанию.

Лучший способ доступа является:

System.getProperty("propertyeName") 

Вы можете увидеть: Eclipse RCP config.ini

Смежные вопросы