Maven: бинарный файл изменяет размер файла после сборки

Я использую appengine-maven-plugin для создания моего проекта Java Google Engine Engine.

Я включаю сертификаты .p12 в подпапку WEB-INF

Когда я создаю свое приложение, размер файла сертификата увеличивается на несколько КБ. Это делает его недействительным. Я тоже видел, что это случилось с сертификатами .jks.

Я проверил достоверность предварительной сборки сертификата и использовал тот же метод для подтверждения недействительности сертификата после сборки.

Может ли кто-нибудь сказать мне, почему размер файла меняется и почему он не просто скопирован в WAR?

Спасибо за вашу помощь.

Ответ 1

Другим решением является отключить фильтрацию файлов .p12 в вашем проекте, добавив следующую конфигурацию:

<build>
  ...
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-resources-plugin</artifactId>                
      <configuration>
        <nonFilteredFileExtensions>
          <nonFilteredFileExtension>p12</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
      </configuration>
    </plugin>
  </plugins>
</build>

Ответ 2

Кажется, что maven применяет фильтрацию к моему файлу сертификата

http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html

Решение было отключить его

<resource>
    <directory>${basedir}/src/main/webapp/certs</directory>
    <filtering>false</filtering>
    <targetPath>WEB-INF/classes</targetPath>
</resource>

Это позволило корректно прочитать сертификат и решить следующее исключение в JavaPNS

Validating keystore reference: VALID  (keystore was found)
Verifying keystore content: javapns.communication.exceptions.KeystoreException:
Keystore exception: DerInputStream.getLength(): lengthTag=111, too big. at javapns.communication.KeystoreManager.wrapKeystoreException(KeystoreManager.java:178)

Ответ 3

Я решил проблему, переместив '.p12' файл на один каталог вверх. Поэтому вместо того, чтобы хранить его в WEB-INF, я переместил его в каталог "webapp". Там нет фильтрации.