2013-10-18 70 views
4

如果你能帮我弄清楚这个问题,我会很愉快的。通过程序集插件排除文件目录MAVEN

当我建立我的项目与.zip与maven < 程序集>插件。

<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd"> 

<id>dev</id> 
<formats> 
    <format>zip</format> 
</formats> 

<fileSets> 

    <fileSet> 
     <directory>${basedir}</directory> 
     <includes> 
      <include>/environments/dev/**/*.sh</include> 
      <include>/environments/dev/**/*.jil</include> 
      <include>/environments/dev/**/*.properties</include> 
      <include>/environments/dev/**/log4j2.xml</include> 
     </includes> 
    </fileSet> 

</fileSets> 

<dependencySets> 
    <dependencySet> 
     <outputDirectory>/lib</outputDirectory> 
     <useProjectArtifact>true</useProjectArtifact> 
     <scope>runtime</scope> 
    </dependencySet> 
</dependencySets> 

我收到以下文件结构:

build.zip----> environments__ 
          |_DEV_ 
            |_bin 
            |_properties 
            |_.... 

目标是:

要Maven构建后得到以下文件结构:

build.zip----> 
            |_bin 
            |_properties 
            |_.... 

没有环境和DEV文件夹。

我读过maven文档(http://maven.apache.org/plugins/maven-assembly-plugin/advanced-descriptor-topics.html),我们可以排除一些文件目录。 这样:

<assembly> 
    .... 

    <fileSets> 
     <fileSet> 
      <directory>${basedir}</directory> 
      <includes> 
       .... 
      </includes> 
      <excludes> 
       <exclude>/environments/dev</exclude> 
      </excludes> 
     </fileSet> 
    </fileSets> 

    <dependencySets> 
     <dependencySet> 
      <outputDirectory>/lib</outputDirectory> 
      <useProjectArtifact>true</useProjectArtifact> 
      <scope>runtime</scope> 
     </dependencySet> 
    </dependencySets> 
</assembly> 

但它没有帮助。我仍然有以前的文件结构。

回答

5

你想你的根目录设置为/环境/ dev的

<fileSet> 
    <directory>${basedir}/environments/dev</directory> 
    <outputDirectory>/</outputDirectory> 
    <filtered>false</filtered> 
</fileSet> 
相关问题