簡體   English   中英

如何在命令行中對 Java 文件運行 antlr4?

[英]How do I run antlr4 on a Java file in the commandline?

我正在嘗試使用 antlr 獲取給定 java 文件的 AST。 我已經在 JavaLexer.g4 和 JavaParser.g4 上運行 antlr4 以生成所有內容,但我正在嘗試使用 grun 從 java 文件中查看樹。 我試過這樣的命令.\grun JavaLexer tokens HelloWorld.java -gui但沒有得到任何回報。

我對是否需要調用 JavaLexer、JavaParser 或我是否在各個方面都完全錯誤的命令感到困惑。 如果重要的話,我正在使用 PowerShell。

(編輯)正確的 powershell 命令是: .\grun Java compilationUnit HelloWorld.java -gui感謝您的幫助!

嘗試

.\grun Java compilationUnit -gui < HellowWorld.java 

(不是正面回復:在 PowerShell 中將 HellowWorld.java 管道輸送到 lysin 的語法)

Java需要語法名稱(在您的情況下為 Java),然后是開始規則(如果要解析 *.java 源文件,則為 Java 解析器的compilationUnit單元)

引用 Lexer 語法名稱並使用tokens作為“開始規則”是一種特殊情況,它僅適用於 -tokens 選項以標記輸入 stream 並轉儲標記。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM