[英]Is there a Java parser for the Java language?
我正在尋找一個允許我解析java源文件的java庫,它給了我代碼的AST表示。
實際上我只對帶有注釋的類和方法定義感興趣。 我不需要方法代碼的AST。
我正在使用此信息進行代碼生成。 這就是我無法首先編譯源文件以從結果類文件中獲取信息的原因。 在生成一些額外的類之前,代碼不會在沒有錯誤的情況下編譯。
Java 6支持將其作為編譯器的本機部分,並為其提供標准API( javax.lang.model
)。 你可以在這里閱讀。 它專為您的用例而設計(即從注釋和源代碼生成代碼)。
我認為NetBeans Javaparser可能是你會感興趣的東西。
您可以使用Java語言的語法文件來嘗試JavaCC 。
我找到了項目javaparser ,它解析單個java文件並返回一個格式良好的AST。
@tangens寫了關於JavaParser但引用了一個現在過時的項目。
2011年有一個分支仍在積極維護,現在還解析Java 1.7和1.8。
你可以在那里找到它: https : //github.com/javaparser/javaparser
免責聲明:我是該項目的貢獻者。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.