2013-02-11 2 views
1

У меня есть проект с несколькими модулями, который я собираю с монтажным плагином в жирную банку. До сих пор слава работает, но теперь я хочу создать еще одну банку, состоящую только из специальных пакетов зависимостей uber-pom.Постройте «легкую» банку на многомодульном проекте

Пример:

У меня есть 3 DEPS на суб-проектов, и я хочу, чтобы иметь баночку с

  • com.mycompany.api *,
  • com.mycompany.settings.. *
  • com.mycompany.public. *

но не

  • com.mycompany.internal. *

Эти пакеты распространяются через 3 DEPS.

Любой шанс реализовать что-то подобное с помощью плагина сборки?

Спасибо, Jan

ответ

3

Shade плагин должен, вероятно, быть в состоянии сделать что-то подобное.

<build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-shade-plugin</artifactId> 
     <version>2.0</version> 
     <executions> 
      <execution> 
      <phase>package</phase> 
      <goals> 
       <goal>shade</goal> 
      </goals> 
      <configuration> 
       <filters> 
       <filter> 
        <artifact>*:*</artifact> 
        <includes> 
        <include>com/mycompany/api/*</include> 
        <include>com/mycompany/settings/*</include> 
        <include>com/mycompany/public/*</include> 
        </includes> 
       </filter> 
       </filters> 
      </configuration> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 
+0

+1: Выглядит неплохо! – carlspring

+0

@gustafc Спасибо, что работает. Но теперь у меня другая проблема. В моем первоначальном проекте «agregator» я использовал модули для сборки всех модулей и получения результатов (jar, sources-jar, jar-with-dependecies) из целевых папок. Кроме того, я захватил некоторые dll из подмодулей, которые были построены на jenkins (с использованием компилятора .net), и мне нужно в моем дистрибутиве zip. В моем pom я начал сборку модуля, а затем использовал плагин сборки (и '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''). Для модулей мне нужно использовать pom-упаковку, но плагин с тенями также создает pom, а теперь (а не баночки), хотя это jar..Any намеки? –

+0

Я не совсем уверен, что понимаю (или что я смогу помочь, если я это сделаю). Вы можете опубликовать это как отдельный вопрос. – gustafc

Смежные вопросы