2

Предположим, я хочу, чтобы разработать Ecore метамодель, которая выглядит примерно так, предназначенный для использования в «запустить» список классов:Могу ли я создать метамодель Ecore, которая позволяет моделям ссылаться на классы Java?

JavaClassRunnerList 
    0..* JavaClass 

И предположим, у меня есть какой-нибудь проект Java, который имеет классы с именем PrintsHello, PrintsSeparator , и PrintsWorld.

Я хотел бы, чтобы иметь возможность написать то модели, которые выглядят следующим образом:

JavaClassRunnerList 
    PrintsHello.class 
    PrintsSeparator.class 
    PrintsWorld.class 
    PrintsSeparator.class 
    PrintsSeparator.class 

Я хочу, чтобы моя модель, чтобы иметь возможность включать в себя проект Java и признать свои классы в качестве вариантов для ссылок модели (возможно, совместно расположен в том же проекте, в котором находится модель.)

Возможно ли это?

ответ

2

Ed Merks said следующее. Смотрите оставшуюся часть обсуждения.

Вы можете использовать тип данных EJavaClass Ecore для создания многозначного атрибута. Возможно, вам лучше просто использовать имена классов и использовать загрузчик классов для преобразования терминов в фактические экземпляры классов.

То же самое касается ссылки на IProject; вы можете использовать строку, а затем разрешить на IProject, используя корень рабочей области.