問題タブ [maven-profiles]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3460 参照

maven - プロファイル プロパティを使用した Maven リソース フィルタリング

次の pom.xml があります。

activationの要素profileがコメントアウトされていることに注意してください

私はまた、以下を持っていますsrc/main/java/application.properties

したがって、Maven が行うことを期待しているのは、開発プロファイルがアクティブ化されていない限り、単純に に${foo.bar}置き換えることです。BazBat${foo.bar}Development

実行するmvn packageと、値が に設定されBazBatます。よし、リソース フィルタリングは期待どおりに機能している。

ただし、実行するmvn package -P Developmentと値が設定されますBazBat

さらに混乱させるためactivationに、プロファイルの要素のコメントを外して実行mvn packageすると、次のように設定さ${foo.bar}れますDevelopment

アクティブなプロファイル名を出力するように実行しましたが、上記の両方のシナリオで開発プロファイルがアクティブであると表示されていますが、フラグが設定されmvn help:active-profiles packageていないとフィルタリングは機能しません。activeByDefault

総括する:

  • プロファイルがactiveByDefault
  • コマンドラインスイッチを介してプロファイルをアクティブ化すると、Maven はプロパティをオーバーライドしませ

何が起こっている?

私の環境:

更新: 最新の Maven (3.3.3) にアップグレードしましたが、問題は解決しません。私の新しい環境:

0 投票する
1 に答える
2471 参照

maven - Maven リソース フィルタリング - プロパティ インジェクションが必要なファイルを明示的に指定する

Maven リソース プラグインを使用すると、Maven プロファイル プロパティの挿入中に特定のファイルを柔軟に除外できますか?

  • 注入段階からだけで、ファイルをアセンブリから除外したくありません。

私が取り組んでいるプロジェクトでは、各展開環境の Settings.xml で一意の Maven プロファイル (および対応するプロパティ) を定義しています。プロジェクトがビルドされると、次の手順が発生します

  • プロジェクト POM は、リソース フォルダーをリソース フィルターを適用するターゲットとして定義します。
  • リソース フォルダーには、.XML および .PROPERTIES ファイルが含まれます。
  • mvn:deploy 中、Maven は期待どおりに Profile プロパティを .PROPERTIES ファイルに挿入します。
  • Maven はまた、Profile プロパティを .XML ファイルに挿入します。これは望ましくない動作です (これらのファイルには、アプリケーションのデプロイ中にプロジェクトが柔軟に値を挿入できるようにするプレースホルダーが含まれています)。

リソース プラグインには、包含オプションと除外オプションを定義する構成オプションがありますが、除外オプションを選択すると、指定したファイルがアセンブリ フォルダーから除外されますが、これは望ましくありません。

どのファイルのプレースホルダーを置き換える必要があるかをMavenに伝えることは可能ですか?

0 投票する
1 に答える
1660 参照

maven - Maven 設定と POM で同じプロファイル名

これは、Maven のビルド プロファイルを使用する最初の日です。次のファイルにプロファイルがあります。

  1. pom.xml
  2. Maven 設定 (%USER_HOME%/.m2/settings.xml)

好奇心のために、同じ id(local_deploy) を持つ両方のファイルに 1 つのプロファイルを作成しました。違いは 1 つのプロパティ (例: tomcat.pwd) だけです。

POM でのプロファイルは次のようになります。

Maven 設定のプロファイルは次のようになります。

Maven 設定のプロファイルは に記載されていないことに注意してください<activeProfiles>

次のコマンドを使用してアプリケーションをインストールしようとすると

アプリケーションがデプロイされ、コンソールに次の出力が表示されます。

私はこのドキュメントを読んでいますが、それは言っています

したがって、Maven 設定のパスワードが正しくないために、デプロイが失敗したはずだと思います。ここで何が欠けていますか?

0 投票する
2 に答える
13212 参照

java - Maven Java プロジェクトで実行時にアクティブ化されたプロファイル名のリストを取得する

JUnit テストの実行時にアクティブ化されたプロファイルを使用できるようにする必要があります。次のような方法があるかどうか疑問に思っていました。

または他の相対的な方法...

${project.profiles[0].id}何とか buを使用するオプションがあることに気付きましたが、機能していません。

何か案は?

0 投票する
3 に答える
5649 参照

java - Maven ビルド プロファイルのアクティブ化

関連するトピックがいくつかあることは知っていますが、それでもその方法を理解できません。

私はmavenを学んでおり、現在ビルドプロファイルを作成中です。マシンに現在インストールされているJavaバージョンをmavenに自動検出させたい。(jdk7)または homeを使用するオフィスで働いているとしましょう。 環境 (オフィス/ホーム) に関係なく、 pom.xml の要素と要素を自動検出する(jdk8)必要があります。について読んだことがありますが、目的を完全には理解できません。<source><target>maven-compiler-pluginjava -versionactivation

0 投票する
2 に答える
2445 参照

maven - Netbeans および Maven マルチモジュール プロジェクトでプロファイルを使用して Windows および Linux 用にビルドする

Java 用の NetBeans の「ワークスペース」には、いくつかのプロジェクトがあります (すべてのディレクトリは同じレベルにあります)。

  • 主要
  • MainExecutable (main(String[] args)デバッグ用のメソッドを含む)
  • JNILibrary (Linux でのみ使用可能)
  • さらに10件のプロジェクト

そして、JNILibrary\pom.xmlのプロファイルを介して Windows 用の「スタブ」(いくつかの空のメソッドのみ) ソース コードを提供することにより、Windows でデバッグ可能にしようとしています。

その後、NetBeans でJNILibraryプロジェクトを右クリックすると、Set Configuration -> linuxまたはを選択できます。Set Configuration -> Windows

残念ながら、MainExecutableプロジェクトをデバッグしようとすると、まだ Linux バージョンが (ビルドおよび) 起動され、Windows PC での起動に失敗します。

誰かが私の問題を解決する方法について正しい方向を示してもらえますか?

以下はMain\pom.xmlからの抜粋です。

そして、 MainExecutable\pom.xmlからの抜粋:

0 投票する
1 に答える
8504 参照

maven - プロファイル内でプラグインの目標を実行する

このプロファイルにはさらに多くのものがありますが、実行したいものだけを含めました。この特定のプラグインのこの特定の目標をどのように実行できますか?

私は試しmvn exec:execましたが、私はこれを得る

[エラー] プロジェクト ando でゴール org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (default-cli) を実行できませんでした: ゴール org.codehaus.mojo:exec-maven- のパラメーター 'executable' plugin:1.3.2:exec が見つからないか無効です -> [ヘルプ 1]

また、エラー出力はバージョン1.3.2を示していますが、私は使用して1.4.0います。