Плагин Maven archetype не позволяет .resources в архетипических ресурсах через

Кто-нибудь знает, как я могу сделать ресурсы, такие как .gitignore частью результирующего проекта?

  • создать архетип с архетипом-ресурсами/.gitignore
  • mvn install
  • mvn archatype: generate
  • результирующий проект не содержит .gitignore

PS. Я уверен, что его там нет.

Ответы

Ответ 1

Это решение для предстоящего maven-resources-plugin v3.0.0 (еще не выпущенного во время публикации этого сообщения, ток по-прежнему равен 2.7) от https://issues.apache.org/jira/browse/MRESOURCES-190 кажется лучше, чем сдерживать обновление версии:

<build>
  <plugins>
    <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-resources-plugin</artifactId>
       <configuration>
          <!-- Required so that .gitignore gets included in archetypes; see https://issues.apache.org/jira/browse/MRESOURCES-190 -->
          <addDefaultExcludes>false</addDefaultExcludes>

Ответ 2

Добавьте запись fileSet в src/main/resources/META-INF/maven/archetype-metadata.xml с пустым тегом каталога:

<fileSet>
  <directory></directory>
  <includes>
    <include>.gitignore</include>
  </includes>
</fileSet>

Это скопирует включенные файлы из src/main/resources/archetype-resources в корневой каталог проекта.

Ответ 3

Проверьте версию maven-resources-plugin, запустив сборку Maven при отладке (с опцией -X). Если вы используете 2.7, существует регрессия, где .gitignore файлы молча игнорируются.

В этом случае вам придется явно использовать 2.6 в вашем pom.xml:

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

Ответ 4

Альтернативой для понижения рейтинга maven-resources-plugin является принудительное исполнение версии plexus-utils, которая фактически имеет регрессию:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.7</version>
    <dependencies>
        <!-- it for fixing maven-resources-plugin 2.7 MRESOURCES-190 -->
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-utils</artifactId>
            <!-- this is last 2.x release -->
            <version>2.1</version>
        </dependency>
    </dependencies>
</plugin>

Ответ 5

ошибка все еще находится в новейшей версии maven-archetype-plugin 2.4 и maven-resources-plugin 3.0.1.

вот решение:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-archetype-plugin</artifactId>
    <version>2.2</version>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.6</version>
 </plugin>

и в вашем генерировать pom.xml вы должны добавить

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.6</version>
 </plugin>