Criação de modelos Ecore

Abaixo há instruções de como executar o Eclipse com componentes de modelagem nas máquinas do laboratório.

Execução

Execução a partir do seu home:

/home/soft/linux/eclipsemodeling/eclipse/eclipse -vm /usr/lib/jvm/java-8-oracle/bin/

Ajustar os valores das seguintes variáveis de ambiente:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export PATH=/usr/lib/jvm/java-8-openjdk-amd64/bin/:$M2:$JAVA_HOME:$/home/soft/eclipsemodeling/eclipse/:$PATH

Tutoriais

O objetivo é praticar diferentes maneiras de criação de modelos e metamodelos no formato Ecore (link para a especificação do Ecore).

Neste link http://www.eclipse.org/modeling/emf/docs/ há um conjunto de material apresentando a plataforma de modelagem baseada em EMF e seus componentes.

Tutoriais

Para a realização dos exercícios abaixo, poderá ser usado os modelos dos tutoriais, e os modelos abaixo:

  • Modelo de Blog Online. O blog deverá ter as seguintes características: um usuário proprietário e usuários leitores; os usuários deverão ter informações pessoais e de login; o blog conterá artigos, escritos pelo proprietário;
  • Modelo de Sistema Acadêmico: o sistema deverá armazenar informação sobre alunos, professores, turmas e notas.

Há três principais técnicas para criação de (meta)modelos Ecore. Estas podem ser praticadas seguindo o guia abaixo.

1) Criação de metamodelos de forma manual

Os passos para criação manual são:

  • Criar um novo projeto em (New -> General -> Project)
  • Criar um metamodelo Ecore em (New -> Ecore Model).
    • Especificar um nome significativo ao arquivo .ecore.
      • Escolher um EPackage como objeto raiz.
      • O modelo pode ser editado usando o editor padrão baseado em árvore
    • Para criação de um diagrama de classes, é necessário escolher (Initialize Ecore diagram).
      • O diagrama pode ser modificado usando o editor visual.
    • O arquivo .ecore e o arquivo. aird serão armazenados no projeto. Estes poderão ser abertos usando um editor de texto para visualizar o código correspondente.

2) Criação de metamodelos e modelos por meio de geração de código

Tutorial sobre geração de código de modelagem EMF:
http://www.vogella.com/tutorials/EclipseEMF/article.html
Também é possível instanciar o projeto “Extended Library Model Example”

3) Criação de metamodelos e modelos programaticamente, isto é, usando diretamente a API de manipulação de modelos do EMF.

Tutorial sobre o uso da API dinâmica do EMF:
https://www.ibm.com/developerworks/library/os-eclipse-dynamicemf/

Inclusão das bibliotecas do EMF : para usar a API do EMF, é necessário incluir umas bibliotecas no caminho de compilação do projeto. No menu contextual do projeto: Build Path->Configure Build Path

Erros comuns e soluções

Em algumas máquinas dos laboratórios, os diferentes caminhos não estão especificados corretamente, causando erro nos projetos.

  • Erro de compilação no executáveis gerados: no tab das bibliotecas, pode ser necessário incluir os seguintes JARs externos da pasta /home/soft/linux/eclipsemodeling/eclipse/.p2/pool/plugins/:
    • org.eclipse.emf.ecore.xmi*.jar
    • org.eclipse.emf.ecore_*.jar
    • org.eclipse.emf.common_*.jar
  • Erro no arquivo MANIFEST.MF, com bundle org.eclipse.core.runtime: no menu “Preferences”, “Target platform”, selecionar “Running Platform”->”Edit” -> “${eclipse_home}” -> “Edit”, e marcar a opção “This install uses the default configuration area”.