gpt4 book ai didi

java - 使用 Ruby 将文件复制到 jar 文件中

转载 作者:行者123 更新时间:2023-12-01 15:42:42 28 4
gpt4 key购买 nike

我的问题是我想将一些 .class 文件从普通目录添加到 .jar 文件中。我必须先提取它还是可以“即时”添加文件?

最佳答案

如果是我,我几乎肯定会在 Ruby 中调用 jar 命令来执行此操作:

system 'jar uf jar_file.jar input_file(s).class'
# or
%x[ 'jar uf jar_file.jar input_file(s).class' ]

Reference here.

如果您仍然想在不调用jar的情况下执行此操作,您应该可以使用 rubyzip 来完成此操作,因为 JAR 文件只是具有特定结构的 ZIP 文件。像这样的事情:

require 'zip/zip'

filename = 'class_file.class'

Zip::ZipOutputStream::open "jar_file.jar" do |zip|
zip.put_next_entry 'dest/path/in/jar/' + filename # don't forget the path

File.open filename, 'rb' {|f| zip.write f.read }
end

还有一些 libarchive 的 Ruby 包装器可以做到这一点。 E.g.

关于java - 使用 Ruby 将文件复制到 jar 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7771611/

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