我試圖在儘可能高的級別生成Java代碼。理想情況下,我希望能夠實例化表示語言語法的對象,例如帶有右值和運算符的表達式對象等。高級Java代碼生成
我被指向Janino,似乎有很多類代表這些概念。但是他們也需要String'Location'來引用它們在文件中的位置。這是因爲Janino專爲讀取和寫入一組Java文件而設計。我感興趣的是內部生成和執行代碼的程序。
我不特別想在字節碼級別工作。
有沒有人有任何關於使用Janino的庫或建議的建議?
我試圖在儘可能高的級別生成Java代碼。理想情況下,我希望能夠實例化表示語言語法的對象,例如帶有右值和運算符的表達式對象等。高級Java代碼生成
我被指向Janino,似乎有很多類代表這些概念。但是他們也需要String'Location'來引用它們在文件中的位置。這是因爲Janino專爲讀取和寫入一組Java文件而設計。我感興趣的是內部生成和執行代碼的程序。
我不特別想在字節碼級別工作。
有沒有人有任何關於使用Janino的庫或建議的建議?
我在這裏增加一個答案,但信貸SpaceTrucker尋找鏈接的問題:A Java API to generate Java source files
在這個問題中提及的工具是CodeModel。 CodeModel具有很好的Java語言特性表示,也可以選擇寫入文件。你可以在這裏找到它:
有一個教程在這裏:
http://blogtech.cardosi.net/2013/03/19/tutorial-java-codemodel/
MoDisco附帶EMFJava metamodel。您可以使用EMF模型在程序運行時創建Java Source對象,然後從修改/創建的EMF模型生成代碼。要從Java元模型生成Java源代碼,請參閱documentation和question I asked。另請注意,Java元模型僅支持Java 1.5語法。
這看起來非常有前途,1.5或者沒有。謝謝! – mtrc
,你的問題是什麼? –
@MarcoForberg看最後一行:「我想知道是否有人對使用Janino有任何圖書館建議或建議。」 ;) –
是的,我意識到這不像最好的SO問題那樣直接。但它感覺像尋求幫助的最佳方式。我正在尋找關於Janino錯誤的建議,或者其他可以執行相同操作的庫的建議。 – mtrc