Развертывание многомодульного проекта Maven на артефакте с классификатором - PullRequest
0 голосов
/ 05 сентября 2018

Добрый день, коллеги. У меня есть мультимодульный проект Maven, что-то вроде этого:

bigdata
  core
    pom
  operations
    pom
  runner
    pom
pom(main)

У меня есть местная среда и среда Hadoop. Мне нужно развернуть две версии, одну для hadoop, одну для локальной. Я хочу использовать классификатор Maven. Я пытался использовать maven-jar-plugin. Это работает, но у меня есть три фляги. Например:

core-1.0.4-local - 58kb ядро-1.0.4-кластер - 64 КБ core-1.0.4 -27MB

Для других пакетов такая же ситуация. Я использую Gitlab CI для развертывания в артефакт. Это из ci.yaml:

  script:
  # Run the MVN command
  - ./jfrog rt mvn "versions:set -DgenerateBackupPoms=false -Dartifactory.publish.artifacts=false -DnewVersion="${CI_COMMIT_TITLE}" -Phadoop" configuration.yml --build-name=multirating-bigdata --build-number=$CI_JOB_ID
  - ./jfrog rt mvn "clean install -Phadoop" configuration.yml --build-name=multirating-bigdata --build-number=$CI_JOB_ID
  # Collect the environment variables
  - ./jfrog rt bce multirating-bigdata $CI_JOB_ID
  # Pass the build information to Artifactory
  - ./jfrog rt bp multirating-bigdata $CI_JOB_ID

Я использую что-то вроде этого ( Как управлять артефактом / артефактом maven, используя разные профили ):

<profiles>
     <profile>
         <id>profile1</id>
         ...
         <build>
             <plugins>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-jar-plugin</artifactId>
                     <version>2.4</version>
                     <executions>
                       <execution>
                       <phase>package</phase>
                       <goals>
                         <goal>jar</goal>
                       </goals>
                       <configuration>
                          <classifier>jdk6</classifier>
                       </configuration>
                      </execution>
                     </executions>
                 <plugin>
             <plugins>
         </build>
     </profile>
     <profile>
         <id>profile2</id>
         ...
         <build>
             <plugins>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-jar-plugin</artifactId>
                     <version>2.4</version>
                     <executions>
                       <execution>
                       <phase>package</phase>
                       <goals>
                         <goal>jar</goal>
                       </goals>
                       <configuration>
                          <classifier>jdk7</classifier>
                       </configuration>
                      </execution>
                     </executions>
                 <plugin>
             <plugins>
         </build>
     </profile>
</profiles>

Мои вопросы:

Я не мог понять, почему первые две банки имеют такой вес? Существует ли самый простой способ добавить классификатор?

...