我已经设置了一个»buildfile«,它应该使用来自非Maven仓库的依赖。要下载我使用以下内容:
LIB_VERSION = "1.9.2"
LIB_EXT = "tar.bz2"
LIB_URL = "https://lib.com/lib-#{LIB_VERSION}.#{LIB_EXT}"
LIB = artifact( "ĺib:lib:#{LIB_EXT}:widget:#{LIB_VERSION}" )
download( LIB => LIB_URL )
什么工作得很好,但由于实际的依赖是在tar.gz2
我需要解压缩,因此我写道:
test.with( LIB )
test.enhance do |task|
Unzip.new( _('dest/lib') => LIB.to_s ).include( '*' ).extract
end
但是这给了我:
Zip::ZipError : Zip end of central directory signature not found
我在ruby 1.9.3
计算机上使用64 bit Linux
,我该如何解决这个问题?
n.b。:我尝试使用this(无法安装)和其他几种解包方法,但都失败了。如何进行拆包?
答案 0 :(得分:1)
知道了。我怎么能忘记蚂蚁的力量......
test.with( LIB )
test.enhance do |task|
ant('uncompress') do |a|
a.bunzip2( :src => LIB.to_s, :dest => _( 'dest/lib.tar' ) )
a.untar( :src => _( 'dest/lib.tar' ), :dest => _( 'dest/lib' ) )
end
end