1. ホーム
  2. java

[解決済み] コマンドラインからMavenプロファイルを無効にする

2023-04-28 11:11:57

質問

私はプロファイル がデフォルトで有効になっています。 をmavenの設定ファイルに記述しています。 ~/.m2/settings.xml .

コマンドラインからこのような操作で無効化することは可能でしょうか。

mvn -P!profileActivatedByDefault

どのように解決するのですか?

はい、その通りです。 以下から mavenプロファイル・ユーザーガイド

<ブロッククオート

プロフィールの非アクティブ化

Maven 2.0.10 以降、1 つまたは複数のプロファイルを無効にするには、以下のように識別子の前に「!」または「-」を付けてコマンドラインを使用します。

mvn groupId:artifactId:goal -P !profile-1,!profile-2

これは、activeByDefault としてマークされたプロファイルや、アクティベーション設定によってアクティベートされていたプロファイルを非アクティベートするために使用することができます。

コメントで @Calfater が指摘したように、感嘆符はほとんどのシェル (Linux や MacOS の bash、zsh など) でエスケープする必要がありますが、Windows のコマンド ラインでは必要ありません。

エスケープのメカニズムはシェルに依存しますが、通常、:

mvn groupId:artifactId:goal -P \!profile-1

または

mvn groupId:artifactId:goal -P '!profile-1'

または、次のように Shaun Morris は以下のように提案しました。 を使用することもできます。 - の代わりに ! でなく は空白文字なしで の間に -P とプロフィールの間に空白を入れません。

mvn groupId:artifactId:goal -P-profile-1,-profile2