タグ付けされた質問 「javac」

javacは主要なJavaコンパイラであり、Sun MicrosystemsのJava Development Kit(JDK)(現在はOracle)に含まれており、他のベンダーのバージョンにも含まれています。

1
なぜarray [idx ++] + =“ a”は、idxをJava 8では1回、Java 9および10では2回増やすのですか?
挑戦のために、仲間のコードゴルファー は次のコードを書きました: import java.util.*; public class Main { public static void main(String[] args) { int size = 3; String[] array = new String[size]; Arrays.fill(array, ""); for(int i = 0; i <= 100; ) { array[i++%size] += i + " "; } for(String element: array) { System.out.println(element); } } } このコードをJava …
751 java  java-8  javac  java-9  java-10 


12
エラー:java:無効なソースリリース:Intellijの8。どういう意味ですか?
Intellij Ultimate 13.1.4を使用してコードをコンパイルしようとしていますが、次のエラーが発生し、その意味がわかりません。 Information:Using javac 1.7.0_55 to compile java sources Information:java: Errors occurred while compiling module 'Example' Information:Compilation completed with 1 error and 0 warnings in 3 sec Information:1 error Information:0 warnings Error:java: invalid source release: 8 私の推測では、Java 8とJava 7に関連していると思いますが、具体的には何なのかわかりません。私は、このメッセージのために周りのGoogleにしようとしたが、彼らのいずれかについての話javacやtarget release、それは正確には思えないように適用します。

6
javacは、内部または外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません[終了]
閉まっている。この質問は再現性がないか、タイプミスが原因です。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 6年前休業。 この質問を改善する Javaプログラムのコンパイル中にエラーが発生しました。 私はWindowsを使用していて(これはWindows固有の問題です)、最新のJDKをインストールしています。 PATH変数を含む解決策を試みましたが、エラーが解決しません。 コンソール出力: C:\>set path=C:Program Files (x86)\Java\jdk1.7.0\bin C:\>javac Hello.java 'javac' is not recognized as an internal or external command, operable program or batch file.

4
なぜJavaクラスは空白行で異なるコンパイルをするのですか?
次のJavaクラスがあります public class HelloWorld { public static void main(String []args) { } } このファイルをコンパイルし、結果のクラスファイルでsha256を実行すると、 9c8d09e27ea78319ddb85fcf4f8085aa7762b0ab36dc5ba5fd000dccb63960ff HelloWorld.class 次に、クラスを変更して、次のような空白行を追加しました。 public class HelloWorld { public static void main(String []args) { } } 繰り返しますが、同じ結果が得られることを期待して出力でsha256を実行しましたが、代わりに 11f7ad3ad03eb9e0bb7bfa3b97bbe0f17d31194d8d92cc683cfbd7852e2d189f HelloWorld.class このTutorialsPointの記事を読みました: おそらくコメントが付いている空白のみを含む行は空白行と呼ばれ、Javaはそれを完全に無視します。 だから私の質問は、Javaが空白行を無視するので、コンパイルされたバイトコードが両方のプログラムで異なるのはなぜですか? つまりにおけるものの違いバイトが置き換えられているバイト。HelloWorld.class0x030x04



4
「java」コマンドはJavaプログラムをコンパイルしますか?
インターネット上のほとんどのウェブサイトは言う: " javacコマンドを使用して.javaファイルをコンパイルします。次に、javaコマンドを使用して実行します" しかし、今日、Javaプログラムを実行せずに実行しようとしたjavacところ、奇妙な結果が得られました。 次のファイルの内容はhello.java次のとおりです。 public class Myclass { public static void main(String[] args){ System.out.println("hello world"); } } それから私は走った: $ javac hello.java これは私にこのエラーを与えます: hello.java:1: error: class Myclass is public, should be declared in a file named Myclass.java public class Myclass { ^ 1 error しかし、javacコマンドなしで実行すると、エラーなしで実行されました。 $ java hello.java hello world …
145 java  javac 

6
-Xlint:uncheckedをAndroid Gradleベースのプロジェクトに追加する方法
以下をルートbuild.gradleファイルに追加しようとしました: subprojects { gradle.projectsEvaluated { tasks.withType(Compile) { options.compilerArgs << "-Xlint:unchecked -Xlint:deprecation" } } } しかし、私はこれを手に入れています: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':Libraries:ActionBarSherlock:compileRelease'. > invalid flag: -Xlint:unchecked -Xlint:deprecation 何が悪いのですか?
138 android  gradle  javac  lint 

17
javacがWindowsコマンドプロンプトで機能しない
javacWindowsコマンドプロンプトで使用しようとしていますが、機能しません。 環境変数の"C:\Program Files\Java\jdk1.6.0_16\bin\"末尾にディレクトリを追加した後PATH、javaコマンドは正常に機能しますが、使用javacすると次のエラーが発生します。 「javac」は、内部または外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。

9
javacオプションは、指定されたディレクトリ下のすべてのjavaファイルを再帰的にコンパイルします
プロジェクトでjavacコンパイラを使用してjavaファイルをコンパイルしています。ファイルは、このようないくつかのパッケージ上に分散されていますcom.vistas.util、com.vistas.converter、com.vistas.LineHelper、com.current.mdcontect。 これらの各パッケージにはいくつかのJavaファイルがあります。私はこのようにjavacを使用しています: javac com/vistas/util/*.java com/vistas/converter/*.java com.vistas.LineHelper/*.java com/current/mdcontect/*.java (1行) 非常に多くのパスを指定する代わりに、親のcomディレクトリからすべてのjavaファイルを再帰的にコンパイルするようにコンパイラーに要求するにはどうすればよいですか?
127 java  javac 

12
javacエラー:注釈処理が明示的に要求された場合にのみクラス名が受け入れられます
Javaプログラムをコンパイルすると、このエラーが発生します。 error: Class names, 'EnumDevices', are only accepted if annotation processing is explicitly requested 1 error これがJavaコードです(私はこれをUbuntuで実行しています)。 import jcuda.CUDA; import jcuda.driver.CUdevprop; import jcuda.driver.types.CUdevice; public class EnumDevices { public static void main(String args[]) { CUDA cuda = new CUDA(true); int count = cuda.getDeviceCount(); System.out.println("Total number of devices: " + count); for …
112 java  javac 

11
javac:コマンドが見つかりません
次のコマンドを使用して、CentOSリリース5.5マシンにjavaをインストールしましたyum install java。しかし、javacを使用してクラスをコンパイルすることはできません。 他のパッケージをインストールする必要がありますか? javac実行可能ファイルを見つけようとしましたが、見つけることができません。 /usr/bin/java次のようにリンクされています: /usr/bin/java-> /etc/alternatives/java /etc/alternatives/java->/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java 私は次の出力を見ましたyum list installed |grep java: java-1.6.0-openjdk.x86_64 1:1.6.0.0-1.16.b17.el5 installed tzdata-java.x86_64 2011b-1.el5 installed

11
Javaクラスファイルの作成は確定的ですか?
同じJDK(つまり、同じjavac実行可能ファイル)を使用する場合、生成されたクラスファイルは常に同じですか?オペレーティングシステムやハードウェアによって違いはありますか?JDKのバージョンを除いて、違いが生じるその他の要因はありますか?違いを避けるためのコンパイラオプションはありますか?違いは理論的にのみ可能ですか、それともOracleはjavac実際には同じ入力とコンパイラオプションに対して異なるクラスファイルを生成しますか? Update 1 生成、つまりコンパイラの出力に興味があります。クラスファイルをさまざまなプラットフォームで実行できるかどうかではありません。 Update 2「同じJDK」とは、同じjavac実行可能ファイルを意味します。 Update 3 Oracleのコンパイラにおける理論上の違いと実際的な違いの違い。 [編集、言い換え質問を追加] 「同じjavac実行可能ファイルを別のプラットフォームで実行すると、異なるバイトコードが生成される状況は何ですか?」

2
Java 9コンパイラの--releaseフラグとは何ですか?
Java 9javacには新しいフラグがあり--releaseます: > javac --help ... --release <release> Compile for a specific VM version. Supported targets: 6, 7, 8, 9 フラグ-sourceとはどう違うの-targetですか?それは単なるショートカット-source X -target Xですか?
89 java  javac  java-9 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.