私の他の質問を見れば、私の目標をより良くすることができます。https://stackoverflow.com/questions/19510039/from-regex-to-parser-generatorsをご覧ください。
私はいい子になろうとしているので、README を読んでいます ( https://java.net/projects/javacc/sources/svn/show/tags/release_60/examples/SimpleExamples?rev=555を参照)。
文法入力ファイルで javacc を実行して、パーサーと語彙アナライザー (またはトークン
マネージャー)を実装する一連の Java ファイルを生成します。javacc Simple1.jj
生成された Java プログラムをコンパイルします。
javac *.java
パーサーを使用する準備が整いました。パーサーを実行するには、次のように入力します。
Java Simple1
私の試み:
D:\tests\javacc\simple1>javacc ..\Simple1.jj
Java Compiler Compiler Version 6.0_beta (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file ..\Simple1.jj . . .
File "TokenMgrError.java" does not exist. Will create one.
File "ParseException.java" does not exist. Will create one.
File "Token.java" does not exist. Will create one.
File "SimpleCharStream.java" does not exist. Will create one.
Parser generated successfully.
D:\tests\javacc\simple1>javac *.java
SimpleCharStream.java:474: error: non-static variable this cannot be referenced from a static context
static void setTrackLineColumn(boolean trackLineColumn) { this.trackLineColumn = trackLineColumn; }
^
1 error
私のJavaバージョン:
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) Client VM (build 24.45-b08, mixed mode, sharing)
「こいつら」が何をしているか知っているのは確かだ。私が何か間違ったことをしたのは確かだ。javacc を使用した最初のテストで、そのような単純なエラーが発生しましたか?
どうすればそれを修正して講義を続けることができますか?