MarkLogic - 为Gradle任务设置PATH变量

问题描述 投票:0回答:1

MarkLogic版本 - 9.0-6.2 Gradle版本 - 4.5.1

我们有一个linux批处理服务器,其中部署了数据中心,mlcp和gradle。

datahub文件夹的位置是/ path1 / data-hub。这是我有数据中心组件(插件,用户配置等以及gradlew,gradle.bat等gradle文件)的地方

我的bash脚本的位置是/ path1 / scripts / data-hub

解压缩gradle的位置是/path2/gradle/gradle-4.5.1。这是bin目录所在的具有gradle和gradle.bat文件的位置(bin下不存在gradlew)

我在'/path2/gradle/gradle-4.5.1/bin'和/ path1 / data-hub(其中设置了数据中心并且存在gradlew文件)中创建了一个PATH变量

当我从位于/ path1 / data-hub的bash脚本执行下面的代码时,协调流程正常运行。

./gradlew hubRunFlow -PentityName="test" -PflowName="test-harmonize- 
process" -PflowType="harmonize" -PenvironmentName=dev

但是,当我将完全相同的脚本放在/ data / scripts / data-hub时,流程没有运行。

 ./gradlew: No such file or directory.

我尝试在gradlew之前删除./但是仍然收到错误'找不到gradlew命令'来运行代码

任何帮助都非常感谢。

marklogic marklogic-9 marklogic-dhf
1个回答
1
投票

如果在shell脚本前加上./,它将只查看当前目录。调用gradlew/path1/data-hub/gradlew或者只是gradle(因为你也安装了Gradle)。

注意:如果使用gradle-wrapper(gradlew),则无需安装Gradle。 Gradle-wrapper下载Gradle本身的独立副本。 gradlew的一个好处是,您可以确定特定版本的Gradle,并分别为每个项目执行此操作。

HTH!

© www.soinside.com 2019 - 2024. All rights reserved.