2017-04-17 22 views
0

まず、AcceleoとEclipseのモデリング機能が新しくなりました。私がやろうとしているのは、単純なテストファイルを作成することです。だから、初心者のために、私は、メインモジュール作成:Acceleo:世代がファイルを生成できませんでした

comment encoding = UTF-8 /] 
[module generate('file:/C:/Users/maria/Documents/workspace/org.eclipse.acceleo.module.m2tTransformation/model/PSMMetamodel.ecore')] 

[template public generateElement(aServicePSM : ServicePSM)] 
[comment @main/] 
[file ('test.java', false, 'UTF-8')] 
Test 
[/file] 
[/template] 

を私はこれを実行すると、私が手:

The generation failed to generate any file because there are no model elements that matches at least the type of the first parameter of one of your main templates. 
The problem may be caused by a problem with the registration of your metamodel, please see the method named "registerPackages" in the Java launcher of your generator. It could also come from a missing [comment @main/] in the template used as the entry point of the generation. 

また、私が使っURIは、私はメタモデルのルートに設定されてnsURI属性値です。私の入力モデルにはServicePSM要素が含まれていると確信しています。 何が間違っていますか?

ありがとうございます。

答えて

0

この問題は、あなたがメタモデルたちは私が考えるあなたのメッセージから

を解決することはできません

  • モデル内の適切な型の要素を持っていない2例

    1. に発生しますあなたがモデルに少なくとも1つのServicePSMを持っていると思われるので、2を解決する必要があるので、安全に無視することができます。

      あなたのモジュールを見ると、メタモデルfile:/C:/Users/maria/Documents/workspace/org.eclipse.acceleo.module.m2tTransformation/model/PSMMetamodel.ecoreで生成する。しかし、EMFでは、この種のURIを使用してメタモデルを参照することはめったにありません。テキストエディタ(右クリック>開く>テキストエディタ)で実際のモデルを開くと、開始時に "xmlns"タグを使ってメタモデルを参照するために実際に使用されたURIを見ることができます。

      たとえば、OCL要素を参照するモデルを開くと、xmlns:ocl.ecore="http://www.eclipse.org/ocl/1.1.0/Ecore"が表示されます。 EMFがモデルファイルで使用するものと同じURIをモジュールファイルに使用していることを確認する必要があります。この場合、http://www.eclipse.org/ocl/1.1.0/Ecoreとなります。

  • 関連する問題