4

次のような zip ファイルにエントリを書き込んでいる場合:

ZipEntry ze = zin.getNextEntry();
while (ze != null) {
InputStream is = zf.getInputStream(ze);
zos.putNextEntry(ze);
int len;
while ((len = is.read(buffer)) >= 0) {
   zos.write(buffer, 0, len);
}

zos.closeEntry();
ze = zin.getNextEntry();

}

2 番目の while ループで次の例外が発生します。

java.util.zip.ZipException: invalid code lengths set

at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)

at java.io.FilterInputStream.read(FilterInputStream.java:107)

この例外がスローされる理由とその意味を知っている人はいますか?

PS さまざまなフォルダーからさまざまなログ ファイルを圧縮するために、JBoss 7.1.1 のリスナーでこれを実行していることに言及する必要があります。フォルダごとにスレッドがあります。複数のスレッドを使用すると、この問題が発生する可能性はありますか?

4

1 に答える 1