Невозможно отключить генерацию JAR исходников с помощью maven-release-plugin - PullRequest
1 голос
/ 21 мая 2010

Я пытаюсь выпустить веб-проект, используя Maven 2.2.1 и maven-release-plugin 2.0-beta-9, но он всегда терпит неудачу при выпуске: выполните генерацию jar для исходного кода для проекта EAR, что делает смысл, так как проект 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.

Чтобы попытаться отключить сборку JAR-источника для проекта EAR, я добавил следующее в POM для моего проекта EAR (версия плагина выпуска установлена ​​в родительском POM):

<build>
    <plugins>
        ...
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
            <configuration>
                <useReleaseProfile>false</useReleaseProfile>
            </configuration>
        </plugin>
    </plugins>
</build>

При повторном запуске релиза после проверки этого изменения я получил ту же ошибку при генерации JAR-источника для проекта EAR, даже если это должно было быть отключено предыдущим фрагментом 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 ]

2 голосов
/ 21 мая 2010

Я наконец понял это. Мне нужно было добавить мои исходные файлы как часть ссылок:

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

В результате все снова заработало. Мне не нужно было никаких специальных настроек для выпуска или плагинов исходного кода, чтобы заставить его работать.

0 голосов
/ 21 марта 2013

В maven-source-plugin версии 2.1 произошла ошибка, которая привела к той же ошибке, что и здесь. Более новая версия> = 2.1.1 содержит исправление. Вот ссылка на эту ошибку для получения дополнительной информации. http://jira.codehaus.org/browse/MSOURCES-44

...