我有Jenkins安装在Linux机器上(CentOS),我试图在主控主机上构build基于Gradle的项目。 我的项目使用基于Stash Git的存储库作为SCM。
在Jenkins构build作业中,我已启用Clean before checkout选项。 我看到, gradlew脚本被检查没有可执行权限。 所以,我为任务设置了Make gradlew executablecheckBox。 但我仍然看到问题:
java.io.IOException: Cannot run program "/project/dir/gradlew" (in directory "/project/dir/"): error=13,Permission denied
我检查了gradlew权限,并且没有可执行文件。
有谁知道如何debugging/设置它?
如何检查在Linux shell上是否设置了“s”权限位? 或Perl?
Java SE 6和Java SE 8 JRE在Windows 7上的行为不同(文件权限)
在Windows上的Python 3.5 – 覆盖其他用户创build的文件“PermissionError:”
使所有新的目录有777个权限
现在,我必须使用addetional构build步骤execute shell script来设置gradlew可执行权限。
注1 :我使用了Use Gradle Wrapper构build选项,而不是Invoke Gradle因为我在Internet中find了一些build议。
注2 :我发现make gradlew脚本可执行的问题,并检查我的jenkins版本应包含此修复程序。 我使用Jenkins构build1.581
Python的Windows服务自动授予文件夹权限创build重复的ACE
在Unix / Linux中将文件移动到不同目录所需的权限
NPM卡住给出相同的错误EISDIR:目录上的非法操作,错误读取(本机)
让我们假设script.sh文件需要设置可执行的位。 使用command git ls-tree检查文件权限:
C:viewsmyproject>git ls-tree HEAD 100644 blob 55c0287d4ef21f15b97eb1f107451b88b479bffe script.sh
正如你所看到的文件具有644权限(忽略100)。 我们想把它改成755:
C:viewsmyproject>git update-index --chmod=+x script.sh C:viewsmyproject>git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: script.sh #
该文件现在上演。 请注意,文件内容不会更改,只有元数据。 我们必须提交文件,以保存更改:
C:viewsmyproject>git commit -m "Changing file permissions" [master 77b171e] Changing file permissions 0 files changed,0 insertions(+),0 deletions(-) mode change 100644 => 100755 script.sh
再次运行git ls-tree来查看更改:
C:viewsmyproject>git ls-tree HEAD 100755 blob 55c0287d4ef21f15b97eb1f107451b88b479bffe script.sh
资源
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。