なぜ次のステップが動作しているのだろうと思いました。javacが正しくないツリー構造を持つパッケージ宣言を持つクラスをコンパイルするのを受け入れる理由
のは、実際のファイル構造であることを言ってみましょう:
- src
- Toto.java
ファイルToto.java
が
package myPackage;
class Toto{}
official javac specification状態
が自分を反映したディレクトリツリー内のソースファイルを配置含まれていパッケージ ツリー。たとえば、すべてのソースファイルが\ workspaceにある場合、 は、/ workspace内のcom.mysoft.mypack.MyClassのソースコードを \ workspace \ com \ mysoft \ mypack \ MyClass.javaに置きます。
私は
$ cd src
$ javac Toto.java
は意志出力誤差と思いました。 代わりに、コンパイラはエラーを生成せず、適切なファイルをコンパイルします。
もちろん、
cd src
javac PokerQ/Affichage.java
または
javac PokerQ/Affichage.java
コンパイルされません。