gpt4 book ai didi

java - Linux下java war文件解压异常

转载 作者:行者123 更新时间:2023-12-01 06:03:46 26 4
gpt4 key购买 nike

在我的 java 应用程序中解压缩 zip 文件时遇到问题。它是一个打包为war文件并在jetty 9.4下运行的Web服务。这是我的(缩短的)堆栈跟踪

2018-05-10 20:13:48,180 ERROR [ProductPublisherHelper:63] net.lingala.zip4j.exception.ZipException: net.lingala.zip4j.exception.ZipException: compression type not supported
net.lingala.zip4j.exception.ZipException: net.lingala.zip4j.exception.ZipException: net.lingala.zip4j.exception.ZipException: compression type not supported
at net.lingala.zip4j.unzip.Unzip.initExtractFile(Unzip.java:163)
at net.lingala.zip4j.unzip.Unzip.initExtractAll(Unzip.java:83)

我的服务器在 Ubuntu 16.04 下运行。到目前为止,这段代码一直运行良好。就是这个文件解压失败。同时,相同的代码在 Windows 上相同的条件下(jetty、war、要解压缩的相同文件)运行得非常好...

该文件是一个大于 1GB 的大压缩 TIF 文件,除此之外我认为它没有什么特别的。我的设置中是否有什么我应该检查的内容可以解释为什么它在 Linux 下失败但在 Windows 下工作?Windows 下的 JDK 为 1.8.0_101,Linux 下的 JDK 为 1.8.0_171。

最佳答案

也许您使用的外部库有问题。对于我的项目,我使用内置的 ZipInputStream

创建输入流:ZipInputStream zis = new ZipInputStream(Files.newInputStream(inputPath))

浏览 .zip 中的文件:ZipEntry ze = zis.getNextEntry();

将 zip 中的输入复制到新文件:

try (OutputStream 输出 = Files.newOutputStream(newFile)) {
IOUtils.copy(zis, 输出);
}

来自 org.apache.commons.io 的 IOUtils

关于java - Linux下java war文件解压异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50324855/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com