gpt4 book ai didi

gradle - 使用gradle将父目录中的文件包含在tar文件中

转载 作者:行者123 更新时间:2023-12-03 06:05:50 25 4
gpt4 key购买 nike

我有一个nodejs应用程序,目录结构设置如下:

.
├── api
│   └── swagger
│   └── swagger.yaml
└── service
├── app.js
├── build.gradle
├── lib
│   └── utils.js
└── package.json

这是 build.gradle的一个片段,试图创建所需文件的 tar
apply plugin: 'maven-publish'

def jsLib = 'lib/'
def packageJson = 'package.json'
def swagger = '../api/swagger/swagger.yaml'
def appJs = 'app.js'

task pack(type: Tar) {
from(project.projectDir)
include(packageJson)
include(swagger)
include(jsLib)
include(appJs)
baseName rootProject.name + '.' + project.name
version rootProject.version
compression = Compression.GZIP
extension = 'tgz'
}

这部分起作用,生成的 tar包含除 swagger.yaml的父目录中的 service/之外的所有内容。

如何包含此文件?

最佳答案

如果serviceapi都是1.)父项目的子项目或2.)更复杂的子项目层次结构的一部分,则可以使用:

1.) from(project.parent.projectDir) {
include **/*.yaml
}

2.) from(project.rootProject.projectDir) {
include **/*.yaml
}

如果没有,则必须显式指定目录:
def apiDir = new File(project.parent.projectDir.parentFile, "api")
from(apiDir) {
include **/*.yaml
}

关于gradle - 使用gradle将父目录中的文件包含在tar文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38876058/

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