私はglassfishv3インストール用のシステムユーザーを作成しました。このユーザーは対話シェルを持たないため、glassfishをasadminで起動すると、このユーザーに環境変数は設定されません。Ubuntuでシステムユーザの環境変数を設定するにはどうすればよいですか?
私は私のinitスクリプトで次のコマンドを使用して環境にコピーしようとしています。asadminの内部
jhv=$(grep JAVA_HOME /etc/environment)
$jhv
export JAVA_HOME
sudo -u glassfish -E $glassfishpath/asadmin start-domain domain1
私が正しくJAVA_HOMEを出力$ JAVA_HOMEをエコー。
グラスフィッシュが起動すると、環境キー値のペアを表示する1つの方法でWebサービスを起動します。 JAVA_HOMEはそれらの間にありません。これにより、glassfishがJAVA_HOMEを必要とするスクリプトを実行する際に問題が発生します。
システムユーザ/グラスフィッシュ環境でJAVA_HOMEを設定するにはどうすれば、Javaコンテナを起動してもそれが持続するようにしますか?
私はGFに精通していません。 「Webサービスを起動する」とは何を意味しますか?また、どのようにキーの値のペアを印刷していますか? –
@ Ryan Stewart - GlassfishはJava Webコンテナであり、Java Webサービスをホストできます。コンテナが認識しているアプリケーション(Webサービス)は、クライアントによって呼び出されたときに作成または初期化されます。あなたの他の質問については、Javaは_System.getenv(); _を使用して環境変数を取得する機能を持っています。これは環境エントリのマップを返します。エントリを反復処理することによって、キー値のペアをStringに追加し、そのStringをサービスから応答として返すことができます。 – Setix
申し訳ありませんが、私はJava開発者であることに気付いたので、私はその領域を知っています。私はGFを使いませんでした。私はTomcatを中心に仕事をしています。 GFが私が使用した他のコンテナと大きく異なるのでなければ、実際にはWebサービスのために別々のOSプロセスを生成するわけではありません。 WARをデプロイするだけですか? –