Эталонная модель Ecore пути другой модели Ecore - PullRequest
3 голосов
/ 29 декабря 2011

Вот моя проблема>

В настоящее время у нас есть несколько моделей Ecore для наших приложений. Одна из моделей Ecore (mainModel.ecore) имеет то, что характерно для всех остальных моделей. Итак, я хочу, чтобы все другие модели ссылались на содержимое этой одной модели, поэтому нам не нужно постоянно копировать содержимое этой одной модели во все модели каждый раз, когда происходят изменения.

Возможно ли это и как я могу это сделать?

(Я очень новичок в Ecore и до сих пор плохо понимаю терминологию.)


EDIT:

Как мне получить EcoreUtil.getRootContainer, чтобы вернуть контейнер загруженного ресурса? Мне нужно иметь это местоположение, чтобы я мог разрешить определенные пути из этого корня. Это может решить мою проблему.


Вот что я пытался сделать до сих пор:

Я попытался «загрузить ресурс ...», загрузив mainModel.ecore во все другие модели и удалив локальные ссылки. Было много мест, которые я должен был исправить после этого, и я сделал. После повторной генерации исходного кода и попытки его компиляции существуют места, где он пытался получить доступ к «точечному пути», который был локальным по отношению к исходному файлу, и я не знаю, как изменить этот «точечный путь» для ссылки на «загруженный ресурс». Поэтому он не может разрешить эти пути.

Спасибо!

1 Ответ

2 голосов
/ 30 декабря 2011

Как правило, вы получите ответы об EMF с большей готовностью, используя новостную группу EMF (eclipse.tools.emf), доступную в Интернете через

http://www.eclipse.org/forums/index.php/f/108/

Ваша проблема не так очевидна. Я не понимаю, как скомпилированный код получает доступ к чему-либо через «точку пути». Я знаю, что если вы загружаете ресурс и ссылаетесь на его содержимое, вы обычно получаете относительные пути, но они обычно разрешаются при загрузке в абсолютный URI. Конечно, сам ссылочный ресурс должен быть загружен с абсолютным URI, но генератор делает это правильно ...

...