1

Maven 2.2.1 と maven-release-plugin 2.0-beta-9 を使用して Web プロジェクトをリリースしようとしていますが、EAR プロジェクトのソース jar の生成で release:perform を実行すると常に失敗します。 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 がまだビルドされているのはなぜですか?

編集: 次の POM スニペットを追加して、このエラーが発生しないように、ソース プラグインに 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>

残念ながら、これでも問題は解決しません。

4

2 に答える 2

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>

これを行うと、すべてが再び機能するようになりました。リリース プラグインやソース プラグインを動作させるために、特別な設定は必要ありませんでした。

于 2010-05-21T18:29:49.767 に答える
0

ここで説明したのと同じエラーが発生した maven-source-plugin バージョン 2.1 にバグがありました。新しいバージョン >= 2.1.1 には修正が含まれています。詳細については、このバグへのリンクを次に示します。http://jira.codehaus.org/browse/MSOURCES-44

于 2013-03-21T15:00:54.810 に答える