332

Maven コマンドラインを使用して、Maven が取得している settings.xml ファイルを特定するにはどうすればよいですか?

4

7 に答える 7

396

-X オプションを指定して Maven を起動し (デバッグ)、出力の先頭を調べます。次のようなものがあるはずです:

...
[INFO] Error stacktraces are turned on.
[DEBUG] Reading global settings from c:\....\apache-maven-3.0.3\conf\settings.xml
[DEBUG] Reading user settings from c:\....\.m2\settings.xml
[DEBUG] Using local repository at C:\....\repository
...

(元のディレクトリ名は私が削除します)

于 2012-05-10T07:18:31.617 に答える
183

cletusの(正しい)回答に対するあなたのコメントは、複数のMaven設定ファイルが関係していることを意味します。

Mavenは常に1つまたは2つの設定ファイルを使用します。()で定義されたグローバル設定${M2_HOME}/conf/settings.xmlは常に必要です。ユーザー設定ファイル(で定義)${user.home}/.m2/settings.xmlはオプションです。ユーザー設定で定義された設定は、対応するグローバル設定よりも優先されます。

コマンドラインからグローバル設定とユーザー設定の場所を上書きできます。次の例では、グローバル設定をc:\ global \ settings.xmlに設定し、ユーザー設定をc:\ user\settings.xmlに設定します。

mvn install --settings c:\user\settings.xml 
     --global-settings c:\global\settings.xml

現在、Mavenで使用されたユーザーおよびグローバル設定ファイルを確立するためのプロパティまたは手段はありません。これらの値にアクセスするには、MavenCliやDefaultMavenSettingsBuilderを変更して、解決された設定オブジェクトにファイルの場所を挿入する必要があります。

于 2009-08-11T21:04:24.170 に答える
169

Mavenヘルププラグインを使用して、ユーザーとグローバル設定ファイルの内容を通知できます。

mvn help:effective-settings

グローバル設定とユーザー設定を組み合わせて吐き出すようにMavenに要求します。

于 2012-11-07T17:23:31.610 に答える
44

これは Maven の構成ファイルです。次の 2 つのレベルで指定できます。

  1. ユーザーレベル。この settings.xml ファイルは、単一ユーザーの構成を提供し、通常は ${user.home}/.m2/settings.xml で提供されます。

              NOTE: This location can be overridden with the CLI option:
    
              -s /path/to/user/settings.xml
    
  2. グローバルレベル。この settings.xml ファイルは、マシン上のすべての Maven ユーザーの構成を提供します (すべて同じ Maven インストールを使用していると仮定します)。通常、${maven.home}/conf/settings.xml で提供されます。

              NOTE: This location can be overridden with the CLI option:
    
              -gs /path/to/global/settings.xml
    
于 2009-08-11T21:11:58.197 に答える
30

M2_HOMEグローバル環境変数。設定リファレンスを参照してください:

ファイル内のsettings要素には、 settings.xmlMaven の実行をさまざまな方法で構成する値を定義するために使用される要素が含まれていますがpom.xml、特定のプロジェクトにバンドルしたり、対象ユーザーに配布したりしないでください。これらには、ローカル リポジトリの場所、代替リモート リポジトリ サーバー、認証情報などの値が含まれます。settings.xml ファイルが存在する場所は 2 つあります。

  • Maven のインストール:$M2_HOME/conf/settings.xml
  • ユーザーのインストール:${user.home}/.m2/settings.xml
于 2009-08-11T15:47:09.007 に答える
27

Mavenが目的のsettings.xmlを使用しているかどうかを判断するための簡単で汚い方法は、そのxmlを無効にし、settings.xmlを必要とする安全なmavenコマンドを実行します。

このsettings.xml を読み取ると、Maven は次のエラーを報告します: 「settings.xml の読み取りエラー...」

于 2009-09-17T14:03:30.063 に答える