`

Maven打包后为何文件大小改变了

阅读更多

项目中使用了X.509证书,用Maven打包后,测试时报错:

java.security.cert.CertificateException: Could not parse certificate: java.io.IOException: Invalid BER/DER data (too huge?)

 

查找了好一会儿原因,才发现证书文件确实变huge了。这是怎么导致的呢,因为resource使用了filter, maven更改了文件内容,解决方法如下:

 

<plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>cer</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
    </configuration>
</plugin>

 

以下摘自maven文档

 

Warning: Do not filter files with binary content like images! This will most likely result in corrupt output.

 

If you have both text files and binary files as resources it is recommended to have two separated folders. One folder src/main/resources (default) for the resources which are not filtered and another folder src/main/resources-filtered for the resources which are filtered.

 

Binary filtering

分享到:
评论

相关推荐

    maven3配置文件

    例如,`maven-jar-plugin`用于打包JAR,它的`jar:jar`目标用于创建JAR文件。在`pom.xml`的`&lt;build&gt;&lt;plugins&gt;`部分配置插件,可以自定义构建过程。 8. **聚合项目(Aggregator Projects)与模块(Modules)** 大型...

    eclipse yuicompressor-maven-plugin

    - **性能提升**:压缩后的文件大小减小,加载速度更快,用户体验更佳。 - **易于集成**:作为Maven插件,与Maven项目无缝配合,无需额外的配置或工具。 ### 6. 注意事项 - 压缩可能导致某些复杂JavaScript代码出错...

    lugin-repository(maven nexus-2.11插件)

    同时,Nexus 还支持自动化的部署策略,例如,可以配置为仅在工件改变时才上传,从而节省带宽和提高效率。 ** Maven Nexus 插件的使用场景和优势 ** 1. **依赖管理**:通过 Nexus,团队可以集中管理所有的 Maven ...

    maven 关于 scope test 和 继承传递的问题

    2. **优化构建**:由于这些依赖不参与主线程的构建,因此可以减少最终打包的JAR或WAR的大小,提高构建效率。 3. **清晰性**:明确区分测试和生产代码,有助于保持项目结构的整洁。 接下来,我们讨论Maven的依赖继承...

    java增量更新打包工具

    在传统的更新方式中,用户需要下载整个应用的新版本,这不仅浪费网络资源,也可能因为文件大小而让用户等待时间过长。增量更新打包工具则解决了这一问题,它仅需传输自上次更新以来发生改变的部分,极大地提高了更新...

    java ssh小型上传系统

    例如,当用户上传文件时,Spring可以确保文件保存到数据库或文件系统的操作在一个事务中完成,如果出现异常,所有改变都会被回滚。 Hibernate作为ORM(Object-Relational Mapping)工具,简化了数据库操作。在上传...

    nexus-3.41.1-01-unix.tar.gz 压缩文件包

    `.tar`是用于归档多个文件和目录到一个单一文件中的工具,而`.gz`则是gzip压缩算法的结果,用于减少文件大小,便于存储和传输。在Linux环境中,你可以使用`tar`命令来解压这个文件,然后再用`gzip`或者`gunzip`命令...

    je-5.0.34.tar.gz

    "tar" 是一种归档工具,可以将多个文件和目录组合成一个单一的文件,而 ".gz" 表示这个归档文件经过了 Gzip 压缩,以减小文件大小,便于传输和存储。 首先,我们来详细了解 "je"。"JE" 可能代表多种含义,但在这个...

    java混淆代码的使用

    - 减小APK或JAR大小:混淆可以删除无用的代码和资源,减小最终打包文件的大小,提高加载速度。 - 防止调试:混淆可以使代码变得复杂,难以通过常规调试工具进行调试。 2. **混淆的原理**: - 类名、方法名和变量...

    ant使用手册

    Ant是Apache软件基金会开发的一个Java项目构建工具,它以其XML为基础的构建文件,使得开发者能够定义构建过程,包括编译、打包、测试和部署等任务。Ant的主要目标是替代Makefile,提供一种跨平台的、易于理解且灵活...

    史上最全的linux常用命令大全.zip

    10. **find**:在文件系统中查找文件,根据不同的条件(如名称、大小、时间等)进行搜索。 11. **sudo**:以超级用户权限执行命令,对于需要管理员权限的操作必不可少。 12. **apt-get** 或 **yum**:在Debian和Red ...

    ChatExample.zip

    3. 构建脚本:如Ant或Maven的build.xml或pom.xml文件,用于编译、打包和部署项目。 4. README或README.md:提供项目介绍、使用指南和开发者注释。 5. 可能还有其他辅助文件,如日志文件、测试数据等。 综合以上信息...

    源程序用到的lib包

    使用构建工具如Maven或Gradle可以帮助自动化这个过程,它们可以跟踪项目的依赖关系,自动下载所需的jar包,并将它们打包到最终的可执行jar或war文件中。 2. **版本冲突**:不同的库可能会依赖不同版本的同一个库,...

    IDEA中Gradle学习指南.pdf

    具体步骤是在`GRADLE_USER_HOME`目录下创建一个名为`init.gradle`的文件,并在其中配置新的镜像源地址。例如,可以将Maven中央仓库和JCenter的源地址替换为阿里云提供的镜像源: ```groovy allprojects { ...

    java 代码混淆,网上可以找到的demo

    2. **为什么要进行代码混淆**: - 防止反编译:Java是解释型语言,其字节码可以直接被反编译工具如JAD转换为源代码,混淆可以增加反编译的难度。 - 保护知识产权:混淆可以保护开发者的核心算法和商业逻辑不被轻易...

    对java jar包实现混淆加密

    Java jar包是Java应用程序的可执行格式,它包含编译后的类文件和其他资源。为了保护源代码不被轻易反编译和理解,开发者通常会使用混淆加密技术来增强代码的安全性。本文将深入探讨如何对Java jar包进行混淆加密,...

    二维码生成工具全套JAVA源码.zip

    源码可能提供了改变码眼形状、大小或颜色的方法,这有助于增强二维码的视觉效果,使之更符合品牌风格。 4. **错误纠正**:二维码有内置的错误纠正机制,即使部分区域损坏,也能恢复部分或全部信息。源码可能包含了...

    activiti-cfg.jar.zip

    例如,如果发现流程执行速度较慢,可能需要调整数据库连接池大小,或者改变日志级别以获取更多运行时信息。 在实际应用中,`activiti-cfg.jar`不仅包含基本配置,还可能包含自定义的类和服务。比如,开发者可能会...

    asm-analysis-1.5.2.jar.zip

    `.zip`则是一种常见的文件压缩格式,用于减小文件大小,方便存储和传输。在这里,`.jar`文件被`.zip`压缩是为了便于下载和管理。 ASM的分析模块可能被用于多种用途,例如: 1. **代码分析**:开发者可以使用ASM...

    Tomcat8.5.55.zip

    这种文件扩展名表示内容是使用GNU tar工具创建,并用gzip进行了压缩,便于在网络上下载和存储,同时减小了文件大小。 Apache Tomcat 8.5.55的核心知识点包括: 1. **Servlet和JSP支持**:Tomcat作为Servlet容器,...

Global site tag (gtag.js) - Google Analytics