1

最近,在做Android项目的时候,遇到一个下载zip文件并解压的需求,对于普通的文件解压,使用OutputStream和InputStream即可完成。但是,如果需要解压时需要密码什么的,普通的流读取就不行了。最后,找了大半天,找到了一个ZIP4J的开源库,ZIP4J支持以下特性:

  • Create, Add, Extract, Update, Remove files from a Zip file
  • Read/Write password protected Zip files
  • AES 128/256 Encryption/Decryption
  • Standard Zip Encryption/Decryption
  • Zip64 format
  • Store (No Compression) and Deflate compression method
  • Create or extract files from Split Zip files (Ex: z01, z02,...zip)
  • Unicode file names
  • Progress Monitor

在这里插入图片描述
接着,我们下载了Git上的源码,由于是Android项目,我希望将代码做成本地依赖,最直接的方式就是打包成jar包。使用IntellJ Ideal打开项目源码,接下来就是将源码编译成jar包。

首先,在项目的Maven Projects界面,点击需要打包的项目,进行如下4步操作。

在这里插入图片描述
等待安装完成之后,就会在控制台输出jar的相关信息,如下图。
在这里插入图片描述
我们可以到对应的目录下查看生成的jar包,为了验证jar包是否成功,可以使用解压软件查看。

除此之外,我们还可以将Maven依赖转化为Gradle依赖,比如:

// Maven依赖
<dependency>
    <groupId>net.lingala.zip4j</groupId>
    <artifactId>zip4j</artifactId>
    <version>2.10.0</version>
</dependency>

//Gradle依赖
implementation("net.lingala.zip4j:zip4j:2.10.0")

xiangzhihong
5.9k 声望15.3k 粉丝

著有《React Native移动开发实战》1,2,3、《Kotlin入门与实战》《Weex跨平台开发实战》、《Flutter跨平台开发与实战》1,2和《Android应用开发实战》