Отключить наложение войны в Maven - PullRequest
2 голосов
/ 11 апреля 2011

Когда у меня есть зависимость типа 'war' в проекте maven, он автоматически использует оверлей для объединения его в проект, который я строю.

Я хотел бы отключить оверлей.

Чтобы упростить процесс разработки, я хочу использовать символические ссылки с maven-junction-plugin, когда я создаю для своего локального Tomcat, и использовать оверлей, только когда я строю для тестовых и продакшн-серверов.

Любойтакже приветствуются другие предложения о том, как я могу работать с военными зависимостями, которые мне нужно изменить без длительного цикла сборки.

Ответы [ 4 ]

2 голосов
/ 15 декабря 2011

Вы не можете отключить набор наложений, как для maven-war-plugin: 2.1.1, но вы можете исключить файлы из наложения.

Исключить все файлы наложения:

<dependentWarIncludes></dependentWarIncludes> 
<dependentWarExcludes>**</dependentWarExcludes>

Исключить все файлы из определенных оверлеев:

<overlays>
  <overlay>
    <groupId>com.gentics</groupId>
    <artifactId>portalnode-webapp</artifactId>
    <excludes>
      <exclude>**/*</exclude>
    </excludes>
  </overlay>
</overlays>

Обратите внимание, что это не уменьшит количество используемых наложений.

1 голос
/ 14 апреля 2011

Настройка исключения наложения в профиле.Для настройки оверлеев см .: http://maven.apache.org/plugins/maven-war-plugin/overlays.html

Эта ссылка указывает, как сделать так, чтобы maven-war-plugin исключал определенные файлы и папки.

Чего я хочу добиться, так это не иметь никакихналожение вообще, но наложение происходит по умолчанию.

Единственное решение, которое я нашел до сих пор, - это поместить сами военные зависимости в профиль, но я не доволен этим решением, так как оно пахнет слишкомбольшая часть обходного пути.

0 голосов
/ 09 декабря 2013

В моем случае оверлей происходит потому, что у нас есть зависимости типа war.

Я решаю свою проблему, помещая все эти зависимости в профиль, который включен по умолчанию.Возможно, взлом, но это работает.

<profile>
  <id>overlay-active</id>

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.1.1</version>
        <configuration>
          <dependentWarExcludes>WEB-INF/lib/*,META-INF/**</dependentWarExcludes>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>myGroup</groupId>
      <artifactId>myWarDepency</artifactId>
      <version>1.0-SNAPSHOT</version>
      <type>war</type>
    </dependency>
0 голосов
/ 13 апреля 2011

Настройка исключения наложения в профиле.Для настройки оверлеев см .: http://maven.apache.org/plugins/maven-war-plugin/overlays.html

...