Java を使用して、環境変数を既存の環境変数に永続的に追加するにはどうすればよいですか。
Windows または Linux の再起動操作を行ったときに、この環境変数がまだそこにあるようにします。
Java を使用して、環境変数を既存の環境変数に永続的に追加するにはどうすればよいですか。
Windows または Linux の再起動操作を行ったときに、この環境変数がまだそこにあるようにします。
プログラムから C:\Program Files\Java\jdk1.6.0\bin までの jdk のパスをコピーし、ユーザー変数に ;.; を入れます。最後に名前を付けます。システム変数で、新規をクリックして名前を入力し、パスを過ぎて....保存します...
コマンドプロンプトに移動します..現在のパスを確認するには> echo %path% パスを設定します> set path="C:\Program Files\Java\jdk1.6.0\bin" OKを入力して、Javaプログラムを確認して実行します
クロスプラットフォームの方法ではありません。Linux では、これらは通常、シェルの init スクリプトによって制御されます。それらのいずれかを編集する必要があります (ユーザー、システム、およびシェルの種類によって異なります)。Windows では、これはシステム構成によって制御されます (それらを変更するための Windows 固有の API がいくつかあると思います)。
環境変数はプラットフォーム固有です。Windows はそれらをレジストリに保存します。
*レジストリでは、ユーザー環境変数は HKEY_CURRENT_USER\Environment に保存され、システム環境変数は HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment に保存されます ( http://demins.blogspot.co.il/2007/から)。 10/where-does-windows-xp-store-evrironment.html )*
Java から Windows レジストリにアクセスする方法はたくさんあります。reg
たとえば、reach コマンド ラインを持つutility named を使用してコマンド ラインを実行できます。JaWin、Jinterop、Jintegra などの相互運用性 API のいずれかを使用することもできます。here で説明されている私のソリューションも参照できます。
Linux では、 のようなコマンド ラインを使用できますexport MYVAR=myvalue
。Runtime.exec()
またはを使用してJavaからこのコマンドラインを実行することを意味しProcessBuilder
ます。問題は、この変数が実際には永続化されないことです。コンピュータが再起動されるまで、すべてのユーザーに表示されます。本当に永続的にするには、ユーザー ログイン スクリプトを変更する必要があります (たとえばbashrc
、ユーザーのデフォルト シェルが bash の場合、ほとんどの Linux システムのファイル)。