は、方法があり、それは次のコードを持っています内部クラスからアクセスされるJavaローカル変数。最終的に宣言する必要があります。なぜNetBeansで動作しますか?私のJavaアプリで
JButton Button = new JButton(Content);
Button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
doSomething(Button.getText());
}
});
それはコンパイルとNetBeans 8.1から正常に動作しますが、私はコマンドラインからプロジェクトをコンパイルしようとしたとき、今日、それは私を与えました次のエラーが発生します:
私の質問は、同じコードがNetBeans 8.1から正常に動作し、コマンドラインでコンパイルできないのはなぜですか? 1.8.0_77
そして、私のNetBeansのJavaのバージョンは次のとおりです:
私のコマンドラインJavaのバージョンがある問題ではないはず1.8.0_65
は、なぜNetBeansはそれエラー考慮しないのですか?
編集:
C:\ Users \ユーザーUSER>のjava -version Javaのバージョン "1.8.0_77"
C:ウー、私にとって大きな驚きは、私はちょうどのjavacのチェックをしました\私は100%混乱しています。最初は "javac -version"コマンドがあるとは思っていませんでした。 "java -verison"と思っていました。私はJavaとjavacの両方を教えてくれると思いますが、私はそれらが同じであると仮定します.2番目はJavaをインストールしたときにインストーラが自動的に更新すると思っていました。 Javaの一部であるため、内部的に一貫しているはずですが、間違いなく、私のjava -versionはjavac -versionとどう違うのですか?言い換えれば、JavaとJavaを同時にインストールするためにOracleをどのように信頼できるのですか?それが仕事をしなければ、Javaを更新するたびにjavacを手動でインストールする必要がありますか?私はそれをやったことがない、なぜ、どうやってこれが起こるのだろうか?
Netbeansプロジェクトのターゲットプラットフォームとは何ですか?使用していると思う 'javac'を使用していますか?コマンドラインのパスは時々あなたを驚かせることがあります。あなたのコードは、Java 8用にコンパイルする必要があります。 – biziclop
コマンドラインは1.8より前のJavaの以前のバージョンを使用していますか? – rgettman
コンパイルする必要があります。コマンドラインで 'Javac'のバージョンを確認してください。 – 11thdimension