Как я могу добавить обычную папку в свой репозиторий, используя сборку Maven? - PullRequest
0 голосов
/ 07 февраля 2020

Прямо сейчас, если я запускаю свой проект как "Maven install", моя Java сборка Maven создает файл war и zip-файл, оба в одном и том же месте каталога.

Как я могу получить это build добавить обычную папку в эту папку и поместить zip-файл в эту папку?

Подробнее

Я пытался использовать плагин maven-assembly-plugin. В репозитории. xml, я указываю, какие файлы поместить в мой zip. Файлы находятся в $ {project.basedir} / files. Я попытался поместить файлы в «extrafolder», чтобы они находились в $ {project.basedir} / files / extrafolder, надеясь, что эта дополнительная папка будет в моем локальном репозитории, но Maven проигнорировал эту папку и все еще поместил и war, и zip в том же хранилище.

Вот плагин в моем POM:

<project>
  [...]
  <build>
    [...]
    <plugins>
      [...]
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <descriptors>
            <descriptor>src/assembly/repository.xml</descriptor>
          </descriptors>
        </configuration>
      </plugin>
   [...]
</project>

А вот и хранилище. xml file:

<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
  <id>repository</id>
  <formats>
    <format>tar</format>
  </formats>
<includeBaseDirectory>false</includeBaseDirectory> 
   <fileSets>
         <fileSet>  
           <directory>${project.basedir}/files</directory>
            <outputDirectory>/</outputDirectory>
             <filtered>true</filtered>
            <includes>
                <include>**/*.*</include> 
            </includes>           
        </fileSet>         
    </fileSets>  
</assembly>

1 Ответ

1 голос
/ 07 февраля 2020

Вы должны настроить outputDirectory как дополнительную папку, если вам это нужно. Пример, приведенный ниже:

   <fileSets>
     <fileSet>  
       <directory>${project.basedir}/files</directory>
        <outputDirectory>extrafolder</outputDirectory>
         <filtered>true</filtered>
        <includes>
            <include>**/*.*</include> 
        </includes>           
    </fileSet>         
</fileSets>  

Чтобы настроить плагин для помещения zip-файла в указанную c папку, как показано ниже:

      <plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.2.0</version>
    <configuration>
      <outputDirectory>extrafolder</outputDirectory>
      <descriptors>
        <descriptor>src/assembly/repository.xml</descriptor>
      </descriptors>
    </configuration>
  </plugin>

Подробнее см. Здесь: https://maven.apache.org/plugins/maven-assembly-plugin/single-mojo.html#outputDirectory

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...