web-dev-qa-db-ja.com

Mavenアセンブリに空のディレクトリを含めるにはどうすればよいですか?

よくあることですが、アセンブリに空のディレクトリを含める必要があります。私の場合は、logs /です。

私はアセンブリ記述子のさまざまなバリエーションを試しました:

<fileSet>
  <directory>${basedir}/target</directory>
  <includes>
    <include>doesntexist</include>
  </includes>
  <outputDirectory>/logs</outputDirectory>
  <fileMode>0644</fileMode>
</fileSet>

そして、ディレクトリは整理されます。

私も除外しようとしましたが、それでも多くのものが含まれていました:

<fileSet>
  <directory>${basedir}/target</directory>
  <excludes>
    <exclude>*</exclude>
  </excludes>
  <outputDirectory>/logs</outputDirectory>
  <fileMode>0644</fileMode>
</fileSet>
35
Dave Stenglein

これは常に私にとってはうまくいきます:

<fileSets>
  <fileSet>
    <directory>.</directory>
    <outputDirectory>logs</outputDirectory>
    <excludes>
      <exclude>*/**</exclude>
    </excludes>
  </fileSet>
</fileSets>
49
Christopher

礼儀、 this SO answer そしていくつかの試行錯誤で、次のものは私のために働くようです...

<fileSet>
  <directory>src/main/Assembly</directory>
  <outputDirectory>/logs</outputDirectory>
  <excludes>
    <exclude>*</exclude>
  </excludes>
</fileSet>

重要なのは、<directory>タグは、valid/existingフォルダーを指定します。にはサブフォルダーがありません

19
Raghuram
<fileSets>
    <fileSet>
        <directory>./EMPTY_DIRECTORY_NAME</directory>
        <outputDirectory>/REQUIRED_DIRECTORY_NAME in Assembly </outputDirectory>
        <excludes>
            <exclude>*/**</exclude>
        </excludes>
    </fileSet>
</fileSets>

例えば.

<fileSets>
    <fileSet>
        <directory>./Logs</directory>
        <outputDirectory>/Feed</outputDirectory>
        <excludes>
          <exclude>*/**</exclude>
        </excludes>
    </fileSet>
</fileSets>

この場合、ログディレクトリ内にコンテンツが含まれていても、フィードディレクトリのアセンブルされたバイナリには含まれません。

1
Ashok Kumar Jha