間もなくプロジェクトが予定されており、すべてが非常にうまくまとめられていますが、Javaクラスパスが真剣に邪魔になっています。できるだけ明確かつ徹底的に状況を説明するように努めます。
そのため、Javaccを使用してプログラミング言語を記述しています。javaccファイルはいくつかのjavaファイルにコンパイルされます。Parser.javaファイルには、生成された他のjavaファイルへの参照と呼び出しが含まれています。したがって、生成後、Parser.javaファイルをコンパイルします。問題は、他のJavaファイルや自分のファイルへの呼び出しを認識できないなど、多くのエラーが発生することです。教室の掲示板で問題について質問したところ、教授は「クラスパスにクラスファイルが必要です」と答えました。わかりました。すばらしいので、問題は、どうすればよいのかということです。基本的に、生成されたJavaファイルと他のヘルパーファイルを含む単一のディレクトリがあります。
それで、私たちは何を試しましたか?
.bashrc(Ubuntu)ファイルを変更して正しいクラスパスを含めようとしましたが、機能しません。すなわち
CLASSPATH=Home/project
(私がファイルに正しい構文を持っていたようなもの)
コンパイル実行してみました
javac -cp . Parser.java
と
javac -cp "." Parser.java
どちらも機能しません。
ファイルのディレクトリにあるxml(xmlだと思います).classpathファイルを編集しようとしました。それでも動作しません。
どういうわけか、私は自分が持っているディレクトリの1つでParser.javaをコンパイルできました(何かを機能させるための無駄な努力で同じファイルを含む複数のディレクトリを作成することになりました)が、実行しようとすると
java -cp . Parser.java
また
java Parser.java
メインが見つからないと表示され、(他のコンピューターでは)ClassNotFoundまたはClassNotDefined例外がスローされます(そのようなものですが、パーサーファイルにメインがありますが見つかりません)。
パッケージの減速とインポートステートメントをファイルに追加しようとしましたが、何も機能していないようです。
基本的に:Javaファイル(すべて1つのディレクトリにあり、jarファイルではない)をコンパイルしてマシンで実行できるように、クラスパスを正常に変更するにはどうすればよいですか?
ご協力ありがとうございました。大変感謝しております。