2016-11-15 4 views
0

Я пытаюсь настроить управление плагином maven для проекта с несколькими модулями. Моя структура проекта выглядит что-то вроде этогоMaven pluginУправление несколькими родителями

base_project 
    -- pom.xml 
    -- projectA 
     -- pom.xml 
     -- projectB 
      -- pom.xml 
     -- projectC 
      -- pom.xml 
    -- project D 
     -- pom.xml 

В pom.xml базового проекта, я определил плагин в PluginManagement

<pluginManagement> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
</pluginManagement> 

Я хочу Projecta наследовать pluginManagement, так что я могу использовать плагин в projectB и projectC. Я хочу, чтобы при создании base_project плагин должен запускаться только для projectB, projectC и projectD, а не для projectA. projectA должен просто наследовать pluginManagement base_project. Я попробовал два типа установки, но не повезло

Установка 1

С помощью этой установки, весна-загрузки Maven-плагин does't работать, когда projectB или projectC получает построить

Projecta pom.xml выглядит

<pluginManagement> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
</pluginManagement> 

в то время как projectB и projectC pom.xml выглядит

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
</build> 

Setup 2

С помощью этой установки, весна-загрузки Maven-плагин также работает против Projecta.

Projecta pom.xml выглядит

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
</build> 

в то время как projectB и projectC pom.xml выглядит

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
</build> 
+0

1 - какую цель вы пытаетесь выполнить? 2- взгляните на эффективного Pom вашего ребенка pom, он покажет, как ваш pom действительно выглядит как [help: effective-pom] –

+0

Получил это. Нам не нужно определять плагин в файле pom.xml projectA. Мы можем напрямую использовать его в детской помпе. – krajwade

ответ

0

Понял работал. Нам не нужно определять плагин в файле pom.xml projectA. Мы можем напрямую использовать его в детской помпе.