Плагин Spring Boot Maven, перемещающий файлы в папку BOOT-INF в файле Jar

#java #maven #spring-boot

#java #maven #spring-boot

Вопрос:

Используя Maven, я пытаюсь включить некоторые файлы лицензий и авторских прав на верхний уровень моей spring boot jar. Эти файлы ДОЛЖНЫ быть на верхнем уровне, чтобы пройти проверку инструментария нашей компании.

Я включил файлы следующим образом

         <build>
        <finalName>${project.artifactId}</finalName>
        <resources>
          <resource>
            <directory>${project.basedir}/..</directory>
            <filtering>true</filtering>
            <includes>
              <include>HERE_NOTICE</include>
              <include>LICENSE</include>
            </includes>
          </resource>
  

Обратите внимание, что я не указал целевой путь (который по умолчанию должен быть на корневом уровне). Однако, когда я создаю jar (с помощью mvn clean install) и заглядываю внутрь jar, файлы находятся в каталоге «BOOT-INF»

      0 Fri Mar 15 14:40:20 EDT 2019 META-INF/
   615 Fri Mar 15 14:40:20 EDT 2019 META-INF/MANIFEST.MF
     0 Fri Mar 15 14:40:20 EDT 2019 BOOT-INF/
     0 Fri Mar 15 14:40:20 EDT 2019 BOOT-INF/classes/
   519 Fri Mar 15 14:40:16 EDT 2019 BOOT-INF/classes/LICENSE
 12143 Fri Mar 15 14:40:16 EDT 2019 BOOT-INF/classes/HERE_NOTICE
  

Мой spring-boot-maven-plugin настроен следующим образом

    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <mainClass>${start-class}</mainClass>
        </configuration>
    </plugin>
  

Есть ли что-нибудь, что я могу настроить, чтобы эти файлы оставались наверху?

Комментарии:

1. К сожалению, я не вижу здесь никакой опции, потому что spring boot работает и имеет специальный макет в результирующем файле для определенной цели. Я не вижу никаких параметров конфигурации в документах docs.spring.io/spring-boot/docs/current/maven-plugin/… Итак, я бы предположил, что вашей компании нужно подумать об изменении инструментов проверки.