Содержит ли ваш Manifest.MF
org.eclipse.core.resources
в разделе Require-bundle
?
А вы запускаете свой тест как плагин? (не как «Java-приложение»)
См. Также эту тему .
Как упомянуто на странице справки " Resources and file system ",
Доступ к рабочему пространству можно получить из класса подключаемого модуля ресурсов (определенного в org.eclipse.core.resources
).
Когда плагин ресурсов не запущен, рабочая область существует исключительно в файловой системе и просматривается или управляется пользователем с помощью стандартных файловых инструментов. Давайте посмотрим, как выглядит рабочее пространство на диске, когда мы объясним API подключаемого модуля ресурсов.
Из этой книги :
Каталог рабочей области, независимо от имени, определенного с помощью опции вызова -data
, имеет две роли:
- действует как родитель для
.metadata
каталога
- и в качестве местоположения по умолчанию для проектов
рабочая область может содержать проекты, только когда:
- плагин
org.eclipse.core.resources
включен в конфигурацию и
- и соответственно запущен из верстака
это автоматически из конфигурации IDE на основе приложения org.eclipse.ui.ide.workbench
.
Смотрите также эту тему и помните, что:
рабочее пространство отличается от рабочего пространства рабочего времени, которое используется для тестирования плагинов. Когда вы выполняете команду Run в среде Eclipse PDE, она создает новое рабочее пространство, которое полностью пустое.
Проверка корневого пространства рабочей области может быть указана с помощью опции запуска "-data" .
Если вы хотите получить доступ к файлу, лучше всего включить его в сам плагин, а затем использовать getClass().getResourceAsStream("/myfile.txt")
, чтобы получить InputStream
, для которого вы можете прочитать содержимое.