問題タブ [maven-module]
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.
maven - モジュールとその子モジュールを Maven リアクター ビルドから除外する方法は?
何度も質問されましたが、解決策が見つかりませんでした。モジュールの子モジュールも無効にする方法!?!
例: プロジェクト BB と CC およびそれらの子モジュールも無効にしたい
しかし、これを実行すると
BBB と CCC も実行されていることがわかります。こちらはほんの一例です。約100のプロジェクトを持つマルチモジュールプロジェクトがあります...すべてのプロジェクトをリストしたくはありません。親だけです。これは可能ですか?
ありがとうございました
java - GWT プロジェクトをマルチモジュール プロジェクトに変換する
動作中の単一の GWT プロジェクトを複数の Maven モジュールに変換しようとしています。新しい構造は次のようになります。
私のファイルは次のようになります(多くの依存関係があります。問題をより明確にするために不要なものを削除したと思います) プロジェクト pom.xml:
プロジェクト共通 pom.xml:
プロジェクト戦争 pom.xml:
古いプロジェクトは私の Project-War にあり、Project & Project-Common を追加しました。このセットアップでは、プロジェクトがビルドされ、「新しい」 Project-War.war が取得されます。しかし、ErrorCode.java を Project-War から Project-Common に移動すると、次のエラーが発生します。
[情報] タイプ 'com.project.modules.TestViewImpl' のコンパイル失敗パスのトレース [情報] [エラー] '.../project/project-war/src/main/java/com/project/modules/TestViewImpl のエラー.java' [情報] [エラー] 20 行目: com.project.errorcodes.ErrorCode 型のソース コードがありません。必要なモジュールを継承するのを忘れましたか? [情報] [エラー] ヒント: モジュールからの継承チェーンを確認してください。必要なモジュールを継承していないか、モジュールがソース パス エントリを適切に追加していない可能性があります
maven - Jenkins は多くの Maven プロジェクトで構成される製品を構築していますか? (Jenkins Pipeline プラグインを使用?)
相互に依存する多くの Maven プロジェクトで構成される製品があります。これらのすべての Maven プロジェクトは、最終製品を提供する単一のプロジェクトにまとめられます。
Maven プロジェクトは同じライフサイクルを共有します。<dependency>
つまり、他のプロジェクトの新しいバージョンを取得するために明示的な変更を行った別のチームによって管理されることはありません。むしろ、誰かがプロジェクトの 1 つで何かを変更した場合、その結果は追加の変更なしで最終製品に直接反映される必要があります。
Jenkins を継続的インテグレーション ツールとして使用しています。
主なお願いは以下の通りです。
- プロジェクト間のすべての依存関係を Jenkins 構成にコピーする必要はありません。これらは 1 つの場所、理想的には
pom.xml
ファイルにある必要があります。 - 不必要なビルドを避ける: SCM の変更時には、影響を受ける可能性のあるプロジェクトのみをビルドします。
- ひし形の依存関係(C は A に依存する B1 と B2 の両方に依存する) の場合、最低 (A) が変更された場合、最終製品 (C) はビルドにも使用された A のバージョンを常に使用する必要があります。 / B1 と B2 をテストします。
質問: Jenkins でこれを行う最善の方法は何ですか?
現在、Maven の依存関係と SCM の変更を分析し、何をどの順序でビルドする必要があるかを判断し、実際にプロジェクトをビルドする Jenkins Pipeline プラグインを使用する単一のジョブを使用することを考えています。
java - Spring Boot で Maven モジュール プロジェクトをテストする方法
Spring Boot に基づくプロジェクトをいくつかの Maven モジュールに分割しました。これで、war-project だけがスターター クラス (メイン メソッドを持ち、Spring を開始する) を含み、他のモジュールは jar 型になります。
スターターが含まれていない場合、jar プロジェクトをテストするにはどうすればよいですか?
JUnit テスト ケース ヘッダーの例:
spring-boot - Spring ブート テスト マルチモジュール Maven アプリケーション
Spring ブートを使用するマルチモジュール Maven アプリケーションがあります。
私の module-it では、依存関係に他のモジュールを追加し、maven-failsafe-plugin を次のように構成します。
Maven でプロジェクトをビルドすると、「Build Success」が表示されます。
ここまでは順調ですね。
それでも、各モジュールをビルドの最後に実行可能な jar にしたいと考えています。上記の設定では、マニフェストは定義されておらず、jar は実行できません。この問題を解決するために、module1 と module2 の pom ファイルに次のコードを追加しました。
この設定では、jar ファイルは実行可能ですが、ビルドできなくなります。モジュールで使用するクラスが見つかりません。
私のテストには次の形式があります(HelloControllerIT.javaの同上):
コントローラーは次の形式をとります (getStr() メソッドは、構成をテストするためだけにここにあります)。
spring-boot-maven-plugin でビルドが失敗する理由と、問題を解決する方法を理解していただけますか?
私は知っています:
- 私のテストは今のところ統合テストではありません。これは単なる例です。
- stackoverflow で見つけた回答によると、以下のようなファイルを追加してから @ContextConfiguration を使用できますが、試してみましたが、Maven ビルドの出力は変更されません。
よろしくお願いします。
java - Maven の同じアグリゲーターと親 (同じ pom)。独立したサブモジュールのバージョン
マルチモジュール Maven プロジェクトに関連するグッド プラクティス、特に pom アグリゲーターと親を別々に使用するというアドバイスについて読み始めました。次の段落を含むこのサイトを見つけました。
モジュール POM の例でわかることは、親 POM からバージョンを継承していることです。これは、小規模から中規模のプロジェクトではごく自然なことです。チームは、次のリリースに向けてすべてのモジュールのコードを変更します。
モジュールに異なるバージョンを使用することもできますが、これではそれほど遠くまで行くことはできません。集合体の親 POM を介してプロジェクトをリリースすると、すべてのモジュールが個別のバージョンでリリースされます。それは結構です-最初は考えました。よく見ると、一部のモジュールがまったく変更されていない場合でも、バージョンが上がっていることがわかります。このアプローチでは、サブモジュールごとに異なるバージョンを使用するマルチモジュール集約親 POM を使用すると、新しいバージョンがメジャー、マイナー、またはマイクロのいずれであるかを決定する柔軟性しかありません。しかし、これは努力する価値がありますか?
私の知る限り、リリース プラグインを実行すると、各サブモジュールの新しいバージョンが要求されます。特定のサブモジュールに変更が加えられていない場合は、そのバージョンを上げないことを決定できます。
著者はどういう意味ですか?
java - Maven 循環依存関係
私のmavenプロジェクトには複数のmavenモジュールがあります。これらのモジュールのうちの 2 つ (製品と機能) は、相互に依存しています。モジュールを依存関係として pom ファイルに含めると、! マークがモジュールに表示されます。maven install を実行すると、このエラーが発生します。
依存関係を追加しないと、製品は機能モジュールで定義された関数にアクセスできず、その逆も同様です。
親 pom.xml
製品モジュール pom.xml
機能モジュール pom.xml