質問

AntLR4を使用して、Java(Java 7)のソース変換ツールを作成します。入力としてMain.javaファイルを入力し、それを出力NewMain.javaソースファイルに変換します。これは同じプログラムに対応しますが、小さな変更があります。トランスフォーメーションツールを実行するには、エクスポートされたGenerator.jarファイルを次のように使用しています。

ステップ1(次のコマンドを使用してnewmain.javaファイルを作成するには、generator.jarを使用します):

java -jar generator.jar folderName/Main.java
.

STEP2 :( NewMain.javaファイルをコンパイル)

javac folderName/newMain.java
.

STEP3:(NewMain.classファイルを実行)

java newMain
.

私はこの操作をする方法が他にどのような方法があるかどうか、ユーザーに(コマンドラインを介して、またはIDEを使用して)ユーザーには透過的ですか?私は、生成されたnewmain.javaソースファイルをnewmain.classでも見ることなく、ユーザーがMain.javaクラスをコンパイルするだけです。実際には、新しい生成された.Classファイルは、Initial Main.classファイルを置き換える必要があります。

役に立ちましたか?

解決

あなたが使っているビルドツールを知りませんが、コマンドラインに言及したことがあるので、Bourneシェルのようなものは次のようなものです。

#!/bin/sh

FOLDER=folderName
CLASS=Main

java -jar generator.jar $FOLDER/$CLASS.java

javac $FOLDER/new$CLASS.java
/bin/mv $FOLDER/new$CLASS.class $FOLDER/$CLASS.class
/bin/rm $FOLDER/new$CLASS.java

java $FOLDER/$CLASS
.

これは本当に単純であり、エラーチェック(例えば、翻訳またはコンパイルエラー)をしません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top