問題タブ [javac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java クラスパスのドット (.) の効果は何ですか?
これは「SCJP 模擬試験」の出題例です。
デフォルトのクラスパスを考えると:
/foo
そして、このディレクトリ構造:
そして、これらの 2 つのファイル:
B.java のコンパイルを許可するのはどれですか? (該当するものをすべて選択してください。)
A.現在のディレクトリを設定してから
xcom
呼び出すB.現在のディレクトリを設定してから
xcom
呼び出すC.現在のディレクトリをテストしてから呼び出すように設定します
D.現在のディレクトリをテストして呼び出すように設定します
E.テストする現在のディレクトリを設定してから呼び出す
答えは C です。そこでの演算子の使い方がわかりません.
。説明してください。
本は言う:
を
B.java
コンパイルするには、コンパイラが最初に を見つけられる必要がありますB.java
。見つかったらB.java
、見つける必要がありますA.class
。パッケージ内にある ためA.class
xcom
A.class
xcom
、ディレクトリから呼び出された場合、コンパイラは検出されません。-classpath
は を探しているのではなく、必要B.java
なクラスB.java
(この場合は) を探していることに注意してくださいA.class
。
わかりません。両方のファイルが同じパッケージにある場合、コンパイラはなぜ A を見つけられないのでしょうか?
java - Javaアクセスが拒否されました
これが私の編集者の27行目から39行目までのコードです。
私の問題はWin7Profに関連しているのではないかと思っています:(アクセスが拒否されました)
これを解決するにはどうすればよいですか、またはこれを機能させるために何をするか、読む必要がありますか?
燃えないでくれてありがとう。
完全に指定されるようにフォルダオプションを変更しました(アクセス...)。javacVendingMachine.javaを実行しているときに、出力が得られない理由を理解する必要があります。新しい質問が正しいと思います。
java - Java コードをコンパイルしようとしたときの不正な文字
ユーザーが Java コードをリッチ テキスト ボックスに入力し、Java コンパイラを使用してコンパイルできるようにするプログラムがあります。作成したコードをコンパイルしようとすると、コードの先頭に存在しない不正な文字があるというエラーが表示されます。これは、コンパイラが私に与えているエラーです:
java - Java Generics:javacとEclipseのどちらのコンパイルが正しいですか?
このメソッドの呼び出し:
このような:
Eclipseで正常にコンパイルされますが、javacは「互換性のないタイプ」の警告を出します。
必須:Foo
javac - javac コンパイル エラー
別のテスト パッケージをインポートするテスト アプリを作成しようとしています。
コンパイル コマンドとエラーと同様に、テスト アプリが一覧表示されます。
ファイルはすべて同じディレクトリにあります。MyIncorrectnessListener.java と MycssErrorHandler.java を警告やエラーなしでコンパイルできました。
エラーの原因を突き止めようとしています >>> sjsu_classes.java:33: '.' 予想される <<<<<
ポインタ/コメントは大歓迎です...
ありがとう
コンパイルコマンド/エラー
}
=======================
java - javac プラグインから MemberSelectTree の式の型を取得するにはどうすればよいですか?
javac の Compiler Tree API を使用してソース コード分析を行う JSR 269 形式の注釈プロセッサを作成しようとしています。メソッド呼び出しなどのメンバー選択式に興味があります。
選択されているメソッド (またはフィールドなど) の名前を簡単に取得できます。しかし、メンバーがどのタイプから選択されているかを知りたいのですが、これを行う簡単な方法を見つけることができないようです. Trees.getTypeMirror
私がそれを呼び出しようとしたすべてに対して返さnull
れます(そしてJavadocはヒントを与えません)。
メンバー select の左側にあるあらゆる種類の式を徹底的に分析し、再帰的分析によって式の静的な型を決定できると思います: NewClassTree
、TypeCastTree
、MethodInvocationTree
、ArrayAccessTree
、およびその他多数。しかし、これは多くのエラーが発生しやすい作業のように見えます。明らかに javac は、多くの目的でこの情報を必要とするため、式の静的型をすでに認識しています。しかし、この型情報にアクセスするにはどうすればよいでしょうか?
私がこれまでに持っているもの:
そして、メソッド呼び出しを行ういくつかの単純なコードで実行したときに出力されるもの:
java - Java が $CLASSPATH の下の .class ファイルをコンパイルしない
パッケージを操作するソース ファイルとクラス ファイルを整理する方法を理解しようとしています。非常に役立つチュートリアルを見つけました。しかし、まだいくつか質問があります。
私が理解している限り、パッケージの名前とパッケージの要素が格納されているディレクトリの名前を同形にすることは良い習慣です。たとえば、aaa.bbb.ccc
クラスを含むという名前のパッケージがある場合ddd
、「ddd.class」という名前のクラス ファイルを「$CLASSPATH/aaa/bbb/ccc/」に配置することをお勧めします。私はそれを正しく理解しましたか?
その場合、Java コンパイラは *.class ファイルを正しいディレクトリに自動的に配置しますか?
この動作を取得できませんでした。$CLASSPATH
変数を に設定しました"/home/myname/java/classes"
。javac KeyEventDemo.java
を含む whichを実行しましたpackage events;
。javac がサブディレクトリを作成し、このサブディレクトリに配置することを期待していevents
まし/home/myname/java/classes
たKeyEventDemo.class
。
それは起こりませんでした。私は javac を手伝おうとして、自分で「events」サブディレクトリを作成しました。再度使用javac
しましたが、「/home/myname/java/classes/events」の下にクラス ファイルを配置したくありません。私は何を間違っていますか?
java - Javaでの注釈処理とは何ですか?
クラス名「HelloWorldApp」は、アノテーション処理が明示的に要求された場合にのみ受け入れられます
どういう意味ですか?そしてそれをどのように適用するのですか?
java - Config Maven 2 to print out javac commands during compile phase
Is there any way to force Maven 2 (>2.0.10) to print the actual javac commands it's executing. We keep running out of memory even though we've bumped up the max using MAVEN_OPTS. I'd like to be able to see the actual command being executed that is running out of memory.
I've tried using the verbose setting below in the pom file's plugin management section but that doesn't seem to give me the javac command: