XTend'de bir giriş modeli ve meta modeline sahip bir kod üreteci yapıyorum. Yani, XLend kod üreteci için giriş modelini oluşturmak için ATL kullanıyorum (bir kerede yerine soyutlama düzeyini kademeli olarak düşürmek için bir dönüştürme sırasının bir parçası olarak; bu, sözdizimini oluşturmak için xtext kullanmamanın sebebi) .EMT Modeli örneğini XTend
Çok açık olmak gerekirse, kod üreteci için giriş modelim XMI biçimindeki bir dosyadır ve xtext projesinin dilbilgisinde NOT (bunu bile kullanmayın)! Ve bence bu bana sorunlara/karışıklığa neden oluyor.
Varolan modelleri kullanarak yeni bir XText projesi oluşturdum, .text dosyasına sağ tıklayıp, eserler oluşturarak eserler oluşturdum ve mwe2 dosyası için aynısını yaptım.
Sonraki adım nedir, doğru yapıyorum? Kod üretecimi nasıl başlatabilirim? Tüm örnekler, DSL oluşturmak için XText'i kullandığınız POV'den alınmıştır. EMF meta modelim ve bunun XMI tabanlı bir örneğim var. XTend'i kullanarak bunu nasıl işleyebilirim?
Eğiticiye herhangi bir ipucu veya işaretçi yardımcı olabilir.
Çözüm: Sven benim kabul edilen yanıt önerildiği üzere
çözüm oldu, ama aynı zamanda ben size meta modelinden Java eserler oluşturmak için bir genmodel kullanmak gerekir dikkat etmek isteriz. Bu bağlantı nasıl gösterir: http://www.vogella.com/articles/EclipseEMF/article.html, bölüm 4'e bakın. Bu çok mantıklı görünebilir, ama yine de değdiğini düşünüyorum.
Çok teşekkürler! XMI, belirli bir meta modelin örneğidir, kodunuz bunu düşünür (yani, bu meta modeli yükler mi?). Ya da XMI formatı yeterince açıklayıcı ve metamodel bir şekilde işaret ediyor? –
Bu yüzden muhtemelen genmodel nesnelere ihtiyacım var ve bu yeni oluşturulan eklenti projesine bağımlılık olarak bu projeyi ekleyebilir miyim? –
Harika, işe yarıyor! Hah. Bu örneği XTend sitesine koymak faydalı olabilir mi? Benim için XTend'in ortak bir amacı gibi geliyor (yani, XPand'in yerini almak için kullanın) –