niedziela, 18 października 2009

Błąd w Xpand Project

Po integracji openarchitectureware w ramach projektu eclipse pojawił się błąd w działaniu kreatora tworzącego nowy projekt. Błąd objawia się logiem:

"SEVERE: [ERROR]: Class not found: 'org.eclipse.mwe.emf.StandaloneSetup'"


Rozwiazanie z forum eclipse:

Otworzyc plik META-INF/MANIFEST.MF, sekcje "Require-Bundle" wyedytowac nastepujaco:

Require-Bundle: org.eclipse.xpand,
org.eclipse.xtend,
org.eclipse.xtend.typesystem.emf,
org.eclipse.emf.mwe.utils;bundle-version="0.7.2",
org.eclipse.emf.ecore.xmi;bundle-version="2.5.0",
org.eclipse.jface.text;bundle-version="3.5.0",
org.antlr.runtime;bundle-version="3.0.0",
com.ibm.icu;bundle-version="4.0.1",
org.eclipse.core.runtime;bundle-version="3.5.0",
org.eclipse.jdt.core;bundle-version="3.5.0"


A następnie zastąpić zawartość pliku generator.mwe na poniższą:

<?xml version="1.0"?>
<workflow>
<property name="model" value="my.generator.projectxxx/src/Model.xmi" />
<property name="src-gen" value="src-gen" />

<!-- set up EMF for standalone execution -->
<bean class="org.eclipse.emf.mwe.utils.StandaloneSetup" >
<platformUri value=".."/>
</bean>

<!-- load model and store it in slot 'model' -->
<component class="org.eclipse.emf.mwe.utils.Reader">
<uri value="platform:/resource/${model}" />
<modelSlot value="model" />
</component>

<!-- check model -->
<component class="org.eclipse.xtend.check.CheckComponent">
<metaModel id="mm"
class="org.eclipse.xtend.typesystem.emf.EmfRegistryMetaModel"/>
<checkFile value="metamodel::Checks" />
<emfAllChildrenSlot value="model" />
</component>

<!-- generate code -->
<component class="org.eclipse.xpand2.Generator">
<metaModel idRef="mm"/>
<expand
value="template::Template::main FOR model" />
<outlet path="${src-gen}" >
<postprocessor class="org.eclipse.xpand2.output.JavaBeautifier" />
</outlet>
</component>
</workflow>

Brak komentarzy:

Prześlij komentarz