Gradle 添加 tar 文件到 tar 文件没有产生正确的结果
Gradle add tar file to tar file not producing correct results
别管我为什么要这样做,我只是想模仿遗留系统。
我希望使用 Gradle (v2.10) 将 tar 文件打包到 tar 文件中。
这是我的 build.gradle 脚本:
task tar1(type: Tar) {
extension 'tar'
archiveName 'tar1.tar'
dirMode 0755
fileMode 0644
into ('/') {
from ('src/files')
}
}
task tar2(type: Tar, dependsOn: 'tar1') {
extension 'tar'
archiveName 'tar2.tar'
dirMode 0755
fileMode 0644
into ('/') {
from (project.distsDir) {
include{'tar1.tar'}
}
}
}
我的构建命令是gradle clean tar2
出于某种原因,我无法理解 Tar 任务正在向 tar2.tar 添加一个 0 长度的 tar2.tar 文件:
~/example$ tar -tvf build/distributions/tar2.tar
-rw-r--r-- 0/0 0 2016-02-03 11:40 tar2.tar
-rw-r--r-- 0/0 10240 2016-02-03 11:40 tar1.tar
我只希望 tar1.tar 存在于 tar2.tar。
我哪里做错了,或者这是 Gradle Tar 任务中的错误?
试试这个:
替换为:
from (project.distsDir) {
include{'tar1.tar'}
}
与:
from tar1.outputs
您也可以删除 dependsOn:'tar1' 作为旁注,tar1 将仍然存在,除非您以某种方式清理它。
别管我为什么要这样做,我只是想模仿遗留系统。
我希望使用 Gradle (v2.10) 将 tar 文件打包到 tar 文件中。
这是我的 build.gradle 脚本:
task tar1(type: Tar) {
extension 'tar'
archiveName 'tar1.tar'
dirMode 0755
fileMode 0644
into ('/') {
from ('src/files')
}
}
task tar2(type: Tar, dependsOn: 'tar1') {
extension 'tar'
archiveName 'tar2.tar'
dirMode 0755
fileMode 0644
into ('/') {
from (project.distsDir) {
include{'tar1.tar'}
}
}
}
我的构建命令是gradle clean tar2
出于某种原因,我无法理解 Tar 任务正在向 tar2.tar 添加一个 0 长度的 tar2.tar 文件:
~/example$ tar -tvf build/distributions/tar2.tar
-rw-r--r-- 0/0 0 2016-02-03 11:40 tar2.tar
-rw-r--r-- 0/0 10240 2016-02-03 11:40 tar1.tar
我只希望 tar1.tar 存在于 tar2.tar。
我哪里做错了,或者这是 Gradle Tar 任务中的错误?
试试这个:
替换为:
from (project.distsDir) {
include{'tar1.tar'}
}
与:
from tar1.outputs
您也可以删除 dependsOn:'tar1' 作为旁注,tar1 将仍然存在,除非您以某种方式清理它。