java编译(打包)完成,导致Excel文件损坏的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_26469555/article/details/89394581
问题描述

在项目中放置一个可供用户登录后下载的excel模版,项目在打包成功后,在target中直接打开excel,发现excel已经损坏。



问题原因

项目在编译或者打包过程中,会对excel进行编译,这样经过文件filter过滤一遍之后,excel文件就损坏了,
具体原因还不清楚,还需要各位大佬具体分析一下。可以利用Maven resource配制中include与exclude的关系来解决这次问题。



问题未解决时的配置


    src/main/resources
    true


解决后的配置
与是用来圈定和排除某一文件目录下的文件是否是工程资源的。如果与划定的范围存在冲突时,以划定的范围为准。大多数情况下,我们使用和是为了配合实现过滤特定文件的需要。
例如,在一个工程中,src/main/resources目录下都是工程的资源文件,并不需要和再进行划定。但如果我们需要对其中的某一个或这两个文件进行过滤的话,则需要借助和进行配置


    src/main/resources
    
        **/*.xlsx
    
    true


    src/main/resources
    
        **/*.xlsx
    
    false


其中第一段配置声明:在src/main/resources目录下,后缀是.xlsx的文件不是资源文件,其它的资源文件需要被过滤。而第二段配置声明:同样在src/main/resources目录下,后缀是.xlsx的文件是资源文件,但是不会被过滤。

配置完成后,如果重新编辑(打包)没有效果,需要maven claen 或者删除target文件重新编译一遍就可以啦。

在遇到这个问题的时候参考了 浪子艳少(https://blog.csdn.net/win7system/article/details/55519444) 的观点,非常感谢。
 

------------------------------------

 

你可能感兴趣的:(java)