Travis CI用于现有Android项目调用

$ ./gradlew build connectedCheck

我得到了这个错误:

/home/travis/build.sh: line 45: ./gradlew: Permission denied
The command "./gradlew build connectedCheck" failed and exited with 126 during .

推荐答案

这取决于unix gradlew脚本的exec-permission.

It can be fixed using the command:

git update-index --chmod=+x gradlew

一点描述来理解这个问题

git ls-tree HEAD

您将看到:

100644 blob xxxxxxxxxxx gradlew

如您所见,该文件拥有644权限.

Fix it by setting the executable flag on your gradlew file changing it to 755:

git update-index --chmod=+x gradlew

只需提交并推动更改:

git commit -m "permission access for travis"

[master e80ab1b] gradlew permission access for travis
 1 file changed, 0 insertions(+), 0 deletions(-)
 mode change 100644 => 100755 gradlew

最后一次判断再次运行git ls-tree以查看更改:

git ls-tree HEAD

你可以看到:

100755 blob xxxxxxxxxxxxx   gradlew

Another way to solve this issue is to use:

before_install:
 - chmod +x gradlew

这种解决方案不会更改git repo中的权限,只会更改执行中的权限运行时.

Android相关问答推荐

使用StateFlow从房间到UiState的流程列表

垂直居中图标

如何在Jetpack composeH中创建具有弯曲末端的六边形形状

Android Studio中的Kotlin版本不兼容错误:需要元数据1.9.0,但找到1.6.0

如何将Unicode符号作为文本居中放置在布局中的按钮(Android XML)中?

从包含的(复合)模块导入 Kotlin 类时,Android 应用程序模块的 build.gradle.kts 未解决的引用错误

了解 CoroutineScope(Job() + Dispatchers.Main) 语法

如何在我的sqlite数据库中获取某个玩家的分数

如何禁用自动登录 google play games services android unity?

Android:使用依赖项 ViewModelProviderFactory 初始化 ViewModel 的正确方法

只能从同一个库组内调用成功(引用groupId=androidx.work from groupId=My Composable)

Jetpack Compose Canvas drawText colored颜色 混合?

如果 auth 失败,如何显示 toast jetpack compose firebase if else @Composable 调用只能在 @Composable 函数的上下文中发生

如何像 XML 一样在 Compose Android Studio 中折叠/展开小部件代码区域/区域

ImageBitmap 使用 Glide/Coil 到画布

我的观点在jetpack compose中相互重叠

删除项目时延迟列不更新

Jetpack Compose:如何绘制这样的路径/线

Android - 水平(从右到左)圆形背景 colored颜色 过渡

操作系统会终止已启动的服务并调用Service.onDestroy吗?