无法使用maven-release-plugin禁用源JAR的生成

时间:2010-05-21 15:13:02

标签: maven-2 release ear maven-release-plugin

我正在尝试使用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代码段禁用。

我做错了什么?为什么源JAR仍在构建?

修改: 我试图让源插件包含我的application.xml文件,以便通过添加以下POM片段不会发生此错误:

<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>

不幸的是,这也无法解决问题。

2 个答案:

答案 0 :(得分:2)

我终于明白了。我需要添加我的源文件作为引用的一部分:

<resources>
    <resource>
        <directory>${project.basedir}</directory>
        <includes>
            <include>META-INF/**/*</include>
        </includes>
        <excludes>
            <exclude>target/**/*</exclude>
            <exclude>bin/**/*</exclude>
            <exclude>META-INF/.svn/**/*</exclude>
        </excludes>
    </resource>
</resources>

这样做可以让一切恢复正常。我不需要任何特殊的发布或源代码配置来使它工作。

答案 1 :(得分:0)

maven-source-plugin 2.1版中存在一个错误,导致出现与此处描述的错误相同的错误。较新版本&gt; = 2.1.1包含修复程序。以下是此Bug的链接以获取更多信息。 http://jira.codehaus.org/browse/MSOURCES-44