0

我正在构建一个sar存档文件类型。我是using使用jboss-packaging-maven-pluginorg.codehaus.mojo。不过,如果能够做到我需要的,我会很乐意使用常规的maven-ear-pluginMaven:构建一个sar并添加文件

我正在构建的sar文件有点奇怪。这些库保存在根目录下(没有问题),但是有几十个额外的属性文件和xml文件也包含在这个sar中。

我在看这两个jboss-packaging-maven-pluginmaven-ear-plugin的文档,但没有看到一个方法来指定在<configuration>部分(如<fileSet>参数)其他文件。我可以切换到程序集并以这种方式构建sar,但它看起来不像程序集那样格式化(至少默认情况下)。

那么,如何添加这些额外的属性文件成sar或者通过maven-ear-pluginjboss-packaging-maven-plugin

程序集中是否可以指定除标准格式以外的其他格式?如果是这样,我该怎么做?

这是我的pom.xml

<project> 
    <modelVersion>4.0.0</modelVersion> 
    <parent> 
    <groupId>com.vegicorp</groupId> 
    <artifactId>parent</artifactId> 
    <version>1.0.0</version> 
    </parent> 
    <artifactId>child-sar</artifactId> 
    <packaging>jboss-sar</packaging> 
    <version>1.0.0</version> 

    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>jboss-packaging-maven-plugin</artifactId> 
     <version>2.2</version> 
     <extensions>true</extensions> 
     <configuration> 
      <!-- Here be dragons --> 
      <deploymentDescriptorFile>${project.parent.basedir}/config/jboss/jboss-service.xml</deploymentDescriptorFile> 
      <libDirectory>${project.build.directory}/${project.build.finalName}</libDirectory> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
    <dependencies> 
    <dependency> 
     <groupId>com.vegicorp</groupId> 
     <artifactId>child-jar</artifactId> 
     <version>1.0.0</version> 
    </dependency> 
    <dependency> 
     <groupId>com.vegicorp</groupId> 
     <artifactId>child-jar</artifactId> 
     <classifier>mdb</classifier> 
     <version>1.0.0</version> 
    </dependency> 
    </dependencies> 
</project> 

而且,我想避免的maven-antrun-plugin如果可能的话。

+1

也许你会更喜欢使用'maven-assembly-plugin'和'sar'包装? – Tunaki

+0

关于'maven-assembly-plugin'的官方Maven文档没有提到其中一个选项是'sar',这就是为什么我没有使用它。原来'sar'是一个有效的包裹。我会去做。 –

回答

0

Maven Assembly Plugin确实构建了sar工件,即使它在文档中没有提及这一点。我只是切换到使用程序集,并工作。