使用 NodeJS 提取 .jar 文件
Extract .jar file with NodeJS
我需要使用 NodeJS 提取 JAR 文件,但我不知道该怎么做,而且我不确定 Whosebug 是否适合这个地方,如果不适合,我深表歉意。
所以 jar 文件只是 java 存档文件,可以使用任何常用的操作系统工具如 unzip
或 jar
解压缩,所以一个简单的命令如 jar xvf /path/to/file.jar
或 unzip /path/to/file.jar
应该提取任何 .jar 文件。但是既然你想使用 nodeJS 来做,你可以使用节点 js 代码模块中的 exec
函数 child_process
.
您可以创建一个简单的函数,它接受 jar 文件的路径,例如
const exec = require('child_process').exec;
extractJar(path) => {
const command = `jar xvf ${path}`;
exec(command, (err, stdout) => {
if(err) console.log(err); return;
console.log('success!');
})
}
或者,您尝试使用像 unzipper 这样的库,这些库不依赖于您的操作系统工具,因为 exec 命令只是在您的 shell 上执行进程,但这些库使用您的节点js提取IO操作。
我需要使用 NodeJS 提取 JAR 文件,但我不知道该怎么做,而且我不确定 Whosebug 是否适合这个地方,如果不适合,我深表歉意。
所以 jar 文件只是 java 存档文件,可以使用任何常用的操作系统工具如 unzip
或 jar
解压缩,所以一个简单的命令如 jar xvf /path/to/file.jar
或 unzip /path/to/file.jar
应该提取任何 .jar 文件。但是既然你想使用 nodeJS 来做,你可以使用节点 js 代码模块中的 exec
函数 child_process
.
您可以创建一个简单的函数,它接受 jar 文件的路径,例如
const exec = require('child_process').exec;
extractJar(path) => {
const command = `jar xvf ${path}`;
exec(command, (err, stdout) => {
if(err) console.log(err); return;
console.log('success!');
})
}
或者,您尝试使用像 unzipper 这样的库,这些库不依赖于您的操作系统工具,因为 exec 命令只是在您的 shell 上执行进程,但这些库使用您的节点js提取IO操作。