Browse Source

移除 net.lingala.zip4j:zip4j 依赖, 采用 JDK 自带方法实现

main
wangshaoping 2 weeks ago
parent
commit
6157d26071
  1. 4
      erm.frontend/package.json
  2. 1
      gradle.properties
  3. 4
      io.sc.engine.mv.frontend/package.json
  4. 4
      io.sc.engine.rule.frontend/package.json
  5. 4
      io.sc.engine.st.frontend/package.json
  6. 1
      io.sc.platform.core/build.gradle
  7. 46
      io.sc.platform.core/src/main/java/io/sc/platform/core/util/ZipUtil.java
  8. 1
      io.sc.platform.gradle/build.gradle

4
erm.frontend/package.json

@ -3,7 +3,9 @@
"version": "8.2.8",
"description": "",
"private": false,
"keywords": [],
"keywords": [
],
"author": "",
"license": "ISC",
"scripts": {

1
gradle.properties

@ -86,7 +86,6 @@ spring_statemachine_version=3.2.1
truelicense_version=4.0.3
webjars_locator_weblogic_version=0.10
weka_version=3.8.6
zip4j_version=2.11.5
###########################################################
# asciidoc deploy directory,the path must end with '/'

4
io.sc.engine.mv.frontend/package.json

@ -3,7 +3,9 @@
"version": "8.2.8",
"description": "",
"private": false,
"keywords": [],
"keywords": [
],
"author": "",
"license": "ISC",
"scripts": {

4
io.sc.engine.rule.frontend/package.json

@ -3,7 +3,9 @@
"version": "8.2.8",
"description": "",
"private": false,
"keywords": [],
"keywords": [
],
"author": "",
"license": "ISC",
"scripts": {

4
io.sc.engine.st.frontend/package.json

@ -3,7 +3,9 @@
"version": "8.2.8",
"description": "",
"private": false,
"keywords": [],
"keywords": [
],
"author": "",
"license": "ISC",
"scripts": {

1
io.sc.platform.core/build.gradle

@ -18,7 +18,6 @@ dependencies {
"com.google.guava:guava:${guava_version}",
"com.beust:jcommander:${jcommander_version}",
"net.lingala.zip4j:zip4j:${zip4j_version}",
"com.github.seancfoley:ipaddress:${ipaddress_version}",
"com.belerweb:pinyin4j:${pinyin4j_version}",
"org.ow2.asm:asm-commons:${asm_version}",

46
io.sc.platform.core/src/main/java/io/sc/platform/core/util/ZipUtil.java

@ -1,10 +1,11 @@
package io.sc.platform.core.util;
import io.sc.platform.util.FileUtil;
import net.lingala.zip4j.ZipFile;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class ZipUtil {
public static void zip(String targetDirPath) throws IOException {
@ -30,29 +31,38 @@ public class ZipUtil {
if (!targetZipFileParent.exists() || !targetZipFileParent.isDirectory()) {
targetZipFileParent.mkdirs();
}
ZipFile zipFile = new ZipFile(targetZipFilePath);
if (targetDirFile.exists() && targetDirFile.isDirectory()) {
File[] fs = targetDirFile.listFiles();
if (fs != null && fs.length > 0) {
for (File f : fs) {
if (f.isDirectory()) {
zipFile.addFolder(f);
} else {
zipFile.addFile(f);
try (ZipOutputStream zipOutputStream = new ZipOutputStream(new FileOutputStream(targetZipFilePath))) {
File[] files = targetDirFile.listFiles();
for (File file : files) {
zip(zipOutputStream,file,file.getName());
}
}
}
}
zipFile.close();
if (delete) {
FileUtil.deldirs(targetDirFile);
}
public static void zip(ZipOutputStream outputStream,File file, String relativePath) throws IOException {
if(file.isDirectory()) {
if (relativePath.endsWith("/")) {
//如果文件夹是以“/”结尾,将文件夹作为压缩箱放入zipOut压缩输出流
outputStream.putNextEntry(new ZipEntry(relativePath));
outputStream.closeEntry();
} else {
throw new IOException(targetDirPath + " NOT exists or is NOT a directory");
//如果文件夹不是以“/”结尾,将文件夹结尾加上“/”之后作为压缩箱放入zipOut压缩输出流
outputStream.putNextEntry(new ZipEntry(relativePath + "/"));
outputStream.closeEntry();
}
//遍历文件夹子目录,进行递归的zipFile
File[] children = file.listFiles();
for (File childFile : children) {
zip(outputStream,childFile, relativePath + "/" + childFile.getName());
}
}else{
outputStream.putNextEntry(new ZipEntry(relativePath));
outputStream.write(Files.readAllBytes(file.toPath()));
outputStream.closeEntry();
}
public static void main(String[] args) throws IOException {
ZipUtil.zip("/Users/wangshaoping/wspsc/workspace/wangshaoping/v8/platform/app.platform/work/web/export/liquibase/platform","/Users/wangshaoping/wspsc/workspace/wangshaoping/v8/platform/app.platform/work/web/export/liquibase2/platform.zip");
}
}

1
io.sc.platform.gradle/build.gradle

@ -22,7 +22,6 @@ dependencies {
"com.fasterxml.jackson.core:jackson-annotations",
"com.fasterxml.jackson.core:jackson-databind",
"com.google.guava:guava:${guava_version}",
"net.lingala.zip4j:zip4j:${zip4j_version}"
)
}

Loading…
Cancel
Save