問題タブ [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 - Java (maven) プロジェクトでさまざまな依存関係のコンテキストを管理する
すべてのコードが非常にまとまりのあるアプリケーションを持っていますが、異なるクラス環境で実行されます。アプリケーションは、さまざまな API を使用して、さまざまな方法で同じことを行います。
したがって、ビルドのさまざまな部分をさまざまなクラスパスで実行したいと考えています。使用の長所/短所は何ですか
- Maven サブモジュール
対
- プロフィール
これを達成するには?
ビルドでは、すべてのコード パスの結果を最終テストに統合する必要があるため、このプロジェクトを完全に個別のソース コードベースに分離することはできません。
maven - マルチモジュールmavenプロジェクトのjarを単一のjarに結合する
いくつかの子プロジェクトとビルド/アセンブリ プロジェクトを含む親 Maven プロジェクトがあります。構造はこんな感じ
ビルド プロジェクト、またはすべての子プロジェクト jar を含むプロジェクトに実行可能 jar を作成したいと考えています。基本的に、最終結果は、クラスパスにすべての子プロジェクト jar を含む jar になるはずです。
maven - 特定のモジュールで maven プラグインのゴールを実行する
次のような状況があります。
masterpom.xml:
と の間にリストされているすべてのモジュールで、 versions-maven-pluginのupdate-parentゴールを実行したいと思います。
どうやってやるの?モジュールがmasterpom.xmlから継承されないため、既に試したこの構成は機能しません(変更してはならない別の親があります)。<modules>
</modules>
コマンドラインからプラグインを実行してみました:
ただし、変更は必要なモジュールに限定されません。
EDIT:適切な場所でコマンドラインからプラグインを実行するとうまくいくようです。POM内でオプションを指定して同じ効果を生み出す方法はまだわかりません。
autowired - 同じマルチモジュールmavenプロジェクト内の1つのmavenモジュールから別のmavenモジュールへのBeanの自動配線
次の子モジュールを持つマルチモジュールmavenプロジェクトがあります
Tracker-dao では、リソース パッケージに spring-context.xml があります。これにより、dao クラスがスキャンされ、他のデータソース構成が含まれます。
spring-dao-config.xml:
dao レイヤーだけの Junit テストは問題なく動作しています。
Tracker-service では、この Tracker-core を依存関係として使用しました。トラッカー サービスで Junit を実行しているときに、アプリケーション コンテキストの読み込みに失敗し、名前に一致する少なくとも 1 つの Bean が見つからないというエラーが発生します。
spring-service-config.xml
トラッカー サービスの Junit
問題はここにあります: @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath:spring-service-config.xml" })
また、tracker-service モジュールの spring-service-config に tracker-core の spring-dao-config をインポートしてみました。しかし、その時、spring-dao-config.xml ファイルが見つからないと言われました。
何が間違っているのか、何が欠けているのかを教えてください。これに対する解決策を提案してください。各モジュールの依存関係を独自のPOM.xmlに追加しましたが、すべてを親POM.xmlにまとめたわけではありません
spring - マルチモジュール プロジェクトの別の Maven モジュールから Spring @Configuration クラスをブートストラップする
演説の前に、質問は本質的にこれに要約されると思います:
@Configuration
アプリケーションの XML ベースの構成から正しく Bean をインスタンス化するにはどうすればよいですか?
私のプロジェクトをモジュール化し、クリーンなアーキテクチャーに従う試みとして、私は 3 つのモジュールで構成されるMavenプロジェクトを作成しました。「web」モジュール、「interface」モジュール、「core」モジュールがあり、web と core の両方で Spring の Java ベースの構成が使用されます。
Web モジュールは、その POMで、コア モジュールに対する実行時依存関係と、インターフェイス モジュールに対するコンパイル時依存関係を宣言します。コア モジュールはインターフェース モジュールの実装であり、後者は Java インターフェースと DTO のみで構成されています。(これは、モジュールをインターフェースするようにプログラムする試みです。)
Web モジュールを開始するときに、コア モジュールのすべての Spring 管理 Bean が Web モジュールのアプリケーション コンテキストに認識されるようにします。次のようなコアモジュールでXMLファイルを作成することにより、これを「XML方式」で行うことに成功しました。
...そして、次のようにWebモジュール構成でこれを参照します。
それは機能しますが、コアモジュールのすべての構成をJavaの方法で行う必要があるため、ソリューションに満足していません。
そのため、 Spring は次のことができると言っていることに注意してください。
...
@Configuration
クラスは、Spring XML ファイル内で通常の定義として宣言できます。
コアモジュールのXMLファイルは非常に無駄がなく、本質的には肉の構成をCoreConfig
. しかし、それは私にとってはうまくいかず、Web モジュールはコア モジュールで定義されている Bean を見つけることができません。これは、Bean がインスタンス化されている場合、別のアプリケーション コンテキストで実行されるかCoreConfig
、または でマークされている@Configuration
が特別であり、XML ファイルからこのようにインスタンス化しても他の Bean の作成がトリガーされないためであると考えられます。それは定義します。
ちなみに、XML 構成なしでこれを行う方法があればいいcom.acme.configuration.spring.AppConfig
のですが、コードにコンパイル時の依存関係がないため、Web モジュールから直接参照することはできません。(ため息) これまでのところ、モジュール化は価値があるよりも面倒であることが証明されています...
maven - コア モジュール IntelliJ の別のプロジェクト
IntelliJ IDEA の複数のプロジェクトでモジュールを使用している場合、これらのモジュールの新しいプロジェクトを作成するか、それらが含まれているプロジェクトの 1 つでモジュールを作成するのが一般的ですか?
java - Javaを使用してmavenマルチモジュールプロジェクトからwarファイルを作成できませんでした
私には親maven project
とtwo child modules
その親がいます。子モジュールの 1 つにpackaging type of jar
. そして、このjarは、他の子モジュールで使用されますpackaging type of war.
最初の子の pom.xml:
2 番目の子の pom.xml:
2 番目の Maven モジュールで package コマンドを実行しようとすると、次のエラーが発生します。