【发布时间】:2011-02-22 10:06:42
【问题描述】:
我正在尝试使用 Maven 2.2.1 和 maven-release-plugin 2.0-beta-9 发布一个 Web 项目,但是在执行发布时总是失败:执行为 EAR 项目生成源 jar,这使得有意义,因为 EAR 项目没有任何来源。
[INFO] [INFO] [source:jar {execution: attach-sources}]
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [ERROR] BUILD ERROR
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] Error creating source archive: You must set at least one file.
为了尝试禁用为 EAR 项目构建源 JAR,我在我的 EAR 项目的 POM 中添加了以下内容(发布插件的版本在父 POM 中设置):
<build>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<useReleaseProfile>false</useReleaseProfile>
</configuration>
</plugin>
</plugins>
</build>
在签入此更改后再次运行该版本时,我在为 EAR 项目生成源 JAR 时遇到了同样的错误,即使之前的 POM sn-p 应该已禁用它。
我做错了什么?为什么仍在构建源 JAR?
编辑: 我试图通过添加以下 POM sn-p 使源插件包含我的 application.xml 文件,以便不会发生此错误:
<build>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<configuration>
<includes>
<include>${basedir}/META-INF/**/*</include>
</includes>
<useDefaultExcludes>false</useDefaultExcludes>
</configuration>
</plugin>
</plugins>
</build>
很遗憾,这也不能解决问题。
【问题讨论】:
-
你为什么使用 maven-release-plugin 的 2.0-beta-9 ...2.0 存在..发布插件不是防止创建源 jar 的正确方法...据我所知,EAR 需要一些配置/属性文件……(源文件)?可能是我错了……
-
我使用的是发布插件的旧版本,部分原因是正在发布的分支是针对该版本开发的,还因为我没有意识到 v2.0 已经发布。
-
关于源文件,由于某种原因,源插件没有选择您放入 EAR 中的配置文件。
-
我尝试将源插件配置为包含我的 application.xml(在非标准目录中),但仍然出现相同的错误。
标签: maven-2 release ear maven-release-plugin