我想使用Maven创建一个EAR,但由于我在一个纯粹的第谷世界,我不能使用maven-ear-plugin
,只有maven-assembly-plugin
(这很好) )。
有multiple questions甚至在这个网站上表明maven-assembly-plugin
可以构建EAR,即使documentation说不。
但是,当我使用这样定义EAR格式时:
<formats>
<format>ear</format>
</formats>
我得到以下异常:
[错误]无法在项目org.acme.application上执行目标org.apache.maven.plugins:maven-assembly-plugin:3.0:single(make-assembly):无法创建程序集:创建程序集归档时出错:appxml属性是必需的 - &gt; [帮助1]
(我为maven-assembly-plugin
尝试了几个版本,所以不是这样。)
由于EAR只是一个重命名的JAR,我现在正在使用JAR格式和其他Maven插件:
<plugin>
<groupId>com.coderplus.maven.plugins</groupId>
<artifactId>copy-rename-maven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<id>rename-ear</id>
<phase>verify</phase>
<goals>
<goal>rename</goal>
</goals>
<configuration>
<sourceFile>${basedir}/target/${earName}.jar</sourceFile>
<destinationFile>${basedir}/target/${earName}.ear</destinationFile>
</configuration>
</execution>
</executions>
</plugin>
在创建EAR时很有效,但是mvn install
会带来以下异常:
[错误]无法执行目标org.apache.maven.plugins:maven-install-plugin:2.5.2:在项目org.acme.application上安装(default-install):无法安装工件组:org。 acme.application:jar:1.9.126-SNAPSHOT:C:\ workspace \ Application \ target \ Application.jar(Das System kann die angegebene Datei nicht finden) - &gt; [帮助1]
(&#34;德语为&#34;找不到文件&#34;有一天我会让他打印出可读的错误信息。)
当然,现在我可以将JAR复制到EAR而不是重命名它,但我认为我先得到第二个意见:是否可以使用maven-assembly-plugin
创建一个EAR?如果是这样,怎么样?