Установка необходимого файла JAR и, возможно, второго файла JAR в Maven в локальный репозиторий - PullRequest
0 голосов
/ 24 декабря 2011

У меня есть продукт, содержащий Jar-файл в своем дистрибутиве, и я создал pom.xml, который использует install-file mojo для установки Jar в локальный репозиторий.Поэтому пользователь распаковывает мой zip-файл и набирает «mvn install», и все работает.

Моя проблема в том, что у меня есть второй файл Jar, который я также хотел бы установить с использованием того же файла pom.xml, но этот файл Jarявляется необязательным и может присутствовать или не присутствовать (файл Jar загружается пользователем отдельно и помещается в тот же каталог).Я попытался установить файл, а также build-helper: attach-artifact и не могу понять, как это сделать в одном POM.Я рад, что пользователь ввел какую-то другую команду для установки этого файла Jar, или он работает с "mvn install".

1 Ответ

1 голос
/ 24 декабря 2011

Одной из возможностей является использование профиля , который активируется в зависимости от наличия второй банки.Этот профиль можно использовать для прикрепления дополнительного артефакта с помощью build helper maven plugin goal, о котором вы упоминали выше.Как то так ...

<project>
  ...
    <profiles>
        <profile>
          <id>second-jar</id>
          <activation>
             <file>
              <exists>${basedir}/location/of/second.jar</exists>          
             </file>
          </activation>
          <build>
            <plugins>
              ...
              <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>1.7</version>
                <executions>
                  <execution>
                    <id>attach-artifacts</id>
                    <phase>package</phase>
                    <goals>
                      <goal>attach-artifact</goal>
                    </goals>
                    <configuration>
                      <artifacts>
                        <artifact>
                          <file>second</file>
                          <type>jar</type>
                        </artifact>
                      </artifacts>
                    </configuration>
                  </execution>
               </executions>
             </plugin>
          </plugins>
       </build>
     </profile>
   </profiles>
</project>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...