Jen*_*der 3 gradle jenkins gradlew gradle-release-plugin
我正在尝试使用gradle release-plugin "释放"我的项目
该插件首先检查我的工作副本是否干净,以便只发布正确版本的东西.
这在我的本地机器上工作得很好.但是,当我在Jenkins工作中尝试相同的事情时,构建失败抱怨工作场所中的各种内容发生了变化.我决定jenkins在内部使用很多东西并将其添加到gitignore:
caches/
native/
wrapper/
Run Code Online (Sandbox Code Playgroud)
但它也认为gradlew已经改变:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':checkCommitNeeded'.
> You have uncommitted files:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
M gradlew
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Run Code Online (Sandbox Code Playgroud)
詹金斯为什么要更改该文件如何防止这种情况?
我认为Jenkins作业的以下设置可能是相关的:
Checkout/merge to local branch (optional)设置为主.如果没有此设置,发布插件会抱怨不在分支上
Clean after checkout 目前已经过检查,但检查/取消选中它并没有什么区别
Make gradlew executable 检查,至少对我来说听起来像是一个可能的原因,但取消选中它会使构建失败因为gradlew不可执行
很老的问题,但是为了记录到这里的任何人,jenkins在这里没有错,你应该使用可执行位集来设置gradlew:
# git update-index --chmod=+x gradlew
# git commit
Run Code Online (Sandbox Code Playgroud)
然后,您将不再需要jenkins设置来设置可执行文件,这是导致您的问题的解决方法.
| 归档时间: |
|
| 查看次数: |
1616 次 |
| 最近记录: |