実行できない - 環境変数 path java マインクラフト




Javaでシステム変数の値を取得するにはどうすればよいですか? (6)

どのようにしてシステム変数値を得ることができますか?

MyComputer -> Properties -> Advanced -> Environment Variables -> System Variables

Javaで?

編集
私はSystem.getenv()メソッドを使用しています。

私が与えるなら印刷価値です

System.out.println(System.getenv("JAVA_HOME"));

私が作成したシステム変数で同じことを試してもnull値を示していnull

System.out.println(System.getenv("DBE"));

Googleはgetenv()をチェックアウトすると言っています:

現在のシステム環境の変更不可能な文字列マップビューを返します。

しかし、どのようにシステム変数が環境変数と違うのか分かりませんので、もっと分かりやすくすることができたらもっと助けてください。



システム/環境のプロパティを取得する際には、いくつかの詳細があります。

まず、 System.getenv(String)が導入されました。 廃止予定(愚かなことに、IHMO)は、JSE 1.4の途中まで続きました。

それはJSE 5で再導入されました

これらはWindowsの環境変数パネルを使用して設定します。 現在のVMがシャットダウンされ、CMD.exeインスタンスが終了するまで、変数の変更が取得されないことがあります。

環境プロパティとは対照的に、JavaにはSystem.getProperties()によってアクセス可能なJavaシステムプロパティがあります。 これらの変数は、 -D name = valueコマンドライン引数を使用してVMを起動するときに初期化できます。 たとえば、プロパティmaxInMemoryおよびpagingDirectoryの値は、以下のコマンドで設定されます。

C:\> java.exe -DmaxInMemory=100M -DpagingDirectory=c:\temp -jar myApp.jar

これらのプロパティは、セキュリティポリシーの制限を除き、実行時に変更できます。


上記のsombodyで述べたように、Eclipseを再起動することは、ユーザー定義の環境変数のために私のために働いた。 Eclipse IDEを再起動すると、 System.getenv()が自分の環境変数をSystem.getenv()しています。


明確にするために、システム変数は環境変数と同じです。 ユーザー環境変数はユーザーごとに設定され、異なるユーザーがログインするたびに異なります。システム全体の環境変数は、ユーザーのログオンに関係なく同じです。

システムワイド変数の現在の値またはJavaのユーザ変数にアクセスするには、以下を参照してください。

String javaHome = System.getenv("JAVA_HOME");

環境変数の詳細については、このwikipediaのページを参照してください

また、次のようにしてJavaを呼び出す前に、読み込もうとしている環境変数が適切に設定されていることを確認してください。

echo %MYENVVAR%

環境変数の値が表示されます。 そうでない場合は、シェルを再度開くか(DOS)、ログオフして再度ログオンする必要があります。


環境変数を設定してから再起動しましたか?

Windowsは何らかのキャッシュに環境変数を保持しているように見え、再起動はそれをリフレッシュする1つの方法です。 私は確信していませんが、別の方法があるかもしれませんが、あなたの変数値をあまり頻繁に変更しないなら、これで十分かもしれません。





environment-variables