Maven: resource binary changes file size after build

不打扰是莪最后的温柔 提交于 2019-11-26 11:09:40

问题


I am using the appengine-maven-plugin to build my Java Google App Engine project.

I include .p12 certificates in a WEB-INF sub-folder

When I build my application, the filesize of the certificate increases by a few KB. This renders it invalid. I have seen the same happen to .jks certificates too.

I have verified the validity of the certificate pre-build and used the same method to confirm the invalidity of the post-build certificate.

Can anyone tell me why the file size is changing and why it is not simply copied to the WAR?

Thanks for your help.


回答1:


Another solution is to disable filtering of .p12 files throughout your project by adding the following config:

<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:


It seems that maven was applying filtering to my certificate file

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

The solution was to disable it

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

This allowed the certificate to be read correctly and solved the following exception in 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:


I solved the problem by moving '.p12' file one directory up. So instead of keeping it in WEB-INF, I moved it up to 'webapp' directory. No filtering happens there.



来源:https://stackoverflow.com/questions/19500458/maven-resource-binary-changes-file-size-after-build

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!