私はJava 7でOCP試験の準備をしています。私が読んでいる本は、私が完全に理解していないことに出くわしました。
あれは、
JVM が IDE によって間接的に呼び出された場合、または JVM がバックグラウンド プロセスから呼び出された場合、メソッド呼び出し
System.console()
は失敗し、null が返されます。
どのような場合に、どのようにバックグラウンド プロセスから JVM を呼び出しますか? 誰かがそれについて詳しく説明できますか?よろしくお願いします
私はJava 7でOCP試験の準備をしています。私が読んでいる本は、私が完全に理解していないことに出くわしました。
あれは、
JVM が IDE によって間接的に呼び出された場合、または JVM がバックグラウンド プロセスから呼び出された場合、メソッド呼び出し
System.console()
は失敗し、null が返されます。
どのような場合に、どのようにバックグラウンド プロセスから JVM を呼び出しますか? 誰かがそれについて詳しく説明できますか?よろしくお願いします
IDE から、またはメインの Java プロセスの子プロセスとして JVM を起動すると、コンソールが接続されないということです。
これはドキュメントのとおりです
仮想マシンにコンソールがあるかどうかは、基盤となるプラットフォームと、仮想マシンが呼び出される方法に依存します。標準入出力ストリームをリダイレクトせずに対話型コマンド ラインから仮想マシンを起動すると、そのコンソールが存在し、通常、仮想マシンを起動したキーボードとディスプレイに接続されます。たとえば、バックグラウンド ジョブ スケジューラによって仮想マシンが自動的に起動される場合、通常、仮想マシンにはコンソールがありません。
Eclipse などの IDE は、システム コンソールを使用したトップレベル プロセスとしてではなく、バックグラウンド プロセスとしてアプリを実行します。