1

これは私のプロジェクト構造です:

myapp-parent
  moduleMain
      src/main/java   ---> main class (it loads a spring context)
      src/main/config ---> main config files
  module1
      src/main/java   ---> specific code of the module
      src/main/config ---> specific config files of the module

ディストリビューションにアセンブリとアプリアセンブラーの Maven プラグインを使用しています。これはアセンブリ記述子です。

<assembly>
<id>archive</id>
<formats>
    <format>zip</format>
    <format>tar.gz</format>
</formats>

    <fileSets>
   <fileSet>
        <directory>${project.build.directory}/generated-resources/appassembler/jsw/myProject/bin</directory>
        <outputDirectory>bin</outputDirectory>
        <includes>
            <include>**</include>
        </includes>
        <useDefaultExcludes>true</useDefaultExcludes>
        <fileMode>0755</fileMode>
        <directoryMode>0755</directoryMode>
    </fileSet>

    <fileSet>
        <directory>src/main/config</directory>
        <outputDirectory>conf</outputDirectory>
    </fileSet>

    <fileSet>
        <directory>${project.build.directory}/generated-resources/appassembler/jsw/myProject/conf</directory>
        <outputDirectory>conf</outputDirectory>
    </fileSet>

    <fileSet>
        <directory>${project.build.directory}/generated-resources/appassembler/jsw/myProject/lib</directory>
        <outputDirectory>lib</outputDirectory>
    </fileSet>
 </fileSets> 
</assembly>

したがって、構成フォルダー (「conf」) を含む配布パッケージを取得します。問題は、そのディレクトリの構成ファイルが mainModule からのものであり、module1 の構成ファイルも同じ場所にあることを確認したいということです。

myProject.tar.gz
    bin
    lib
    logs
    conf --> Here we have config files from modeuleMain & module1

何か案が???

4

2 に答える 2

2

<moduleSet/>アセンブリ記述子の構成、特に<sources/>サブセクションModuleSet Source-Inclusion Exampleを確認することをお勧めします。

注:これだけでは、ソリューションへの道のりの一部しか得られません。問題は、アセンブリ プラグインの moduleSets 関数が元々、現在のプロジェクト (アセンブリを作成するプロジェクト) の子モジュールでのみ動作するように設計されていることです。これを回避するために、アセンブリ プラグインのバージョン 2.2 またはその前後で、 と呼ばれる新しい構成を導入しました<useAllReactorProjects/>。このフラグをtrueに設定すると、現在のビルドのすべてのモジュールがアセンブリで使用可能になります。

moduleSet でこれを有効にすると、module1 の構成ファイルを含めることができるはずです。

于 2012-12-19T19:07:46.940 に答える
0

アセンブリプラグインのマルチモジュールサポートを検討しましたか?

http://maven.apache.org/plugins/maven-assembly-plugin/examples/multimodule/index.html

于 2012-12-19T15:02:08.757 に答える