4

Centos 5.xのMavenが「-s」を使用しないとユーザー設定を見つけられない理由を誰かが知っていますか?

  • ホームは/home/buildに設定されます
  • $ HOME / .m2 / settings.xmlが存在し、ユーザーが所有し、ユーザーが読み取ることができます
  • mvn 3.0.4の新しいダウンロードを使用しています(3.0.3でも失敗します)

私の環境で何かが邪魔をしているのではないかと思いますが、何が起こっているのかわかりません。

ユーザー設定が見つかりません-「-s」を使用していません

[build@...]$ echo $HOME; mvn clean -X|grep setting 

/home/build
[DEBUG] Reading global settings from .../apache-maven-3.0.4/conf/settings.xml
[DEBUG] Reading user settings from ?/.m2/settings.xml
[DEBUG]   Imported: org.apache.maven.settings < plexus.core

ユーザー設定を検索-「-s」を使用

[build@...]$ echo $HOME; mvn clean -X -s $HOME/.m2/settings.xml|grep setting 

/home/build
[DEBUG] Reading global settings from .../apache-maven-3.0.4/conf/settings.xml
[DEBUG] Reading user settings from /home/build/.m2/settings.xml
[DEBUG]   Imported: org.apache.maven.settings < plexus.core

ありがとう

ピーター

4

1 に答える 1

1

「su」コマンドは、この特定の問題の核心にあります。「su」は、別のユーザーとしてコマンドを実行できます。「-」なしで使用すると、その使用のための起動スクリプトが処理されず、場合によってはハイブリッド環境になる可能性があります。

init.d 起動スクリプトを作成するときは、コマンドを呼び出すときに必ず「su -」を使用してください。そうしないと、ビルド システム ユーザーが root ユーザーの環境変数 (HOME を含む) を使用して実行します。

BAMBOO_USER が root ユーザーの環境で動作するため、一部の OS で問題が発生する

    su $BAMBOO_USER -c "cd ${BAMBOO_HOME}; nohup java -Dbamboo.home=${BAMBOO_HOME} ... &"

より適切な init.d スクリプト

    su - $BAMBOO_USER -c "cd ${BAMBOO_HOME}; nohup java -Dbamboo.home=${BAMBOO_HOME} ... &"
于 2012-12-27T23:12:04.680 に答える