【问题标题】:Jenkins unable to locate files on my computer詹金斯无法在我的电脑上找到文件
【发布时间】:2013-06-06 15:20:35
【问题描述】:

当我尝试在 jenkins 上构建我的 android 项目时,它会说:

由匿名用户发起 在工作区/home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2 中构建 [mysteryshopper_version2] $ ant -Dlabel=trial1-9 清洁调试 构建文件:/home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml

构建失败

/home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml:90:找不到从/home/tanzeelrana导入的/home/tanzeelrana/android-sdk-linux/tools/ant/build.xml /git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml

总时间:0秒 构建步骤“调用 Ant”将构建标记为失败 完成:失败

在我的 build.xml 文件的第 90 行,我有一个标签,其中包含以下内容:

导入文件="/home/tanzeelrana/android-sdk-linux/tools/ant/build.xml"

有谁知道为什么找不到这个文件?该文件存在于确切的路径中......

【问题讨论】:

  • 可能是安全限制。 Jenkins 通常以用户 jenkins 身份运行,该用户可能无法访问您的主目录。当您使用 Git 时,我会推荐 Gerrit 并使用 Gerrit Trigger 插件。

标签: android jenkins hudson jenkins-plugins hudson-plugins


【解决方案1】:

Jenkins 通常与自己的用户 (jenkins) 一起运行,
所以这可能是权限问题。

尝试从您的 Jenkins 作业中打印当前用户。

编辑:
请参阅此处以将 Jenkins 作为守护程序运行 -
它还展示了如何将其设置为以不同于“jenkins”的用户身份运行:

Installing Jenkins as a Unix daemon

【讨论】:

  • 有没有办法让 jenkins 获得权限?
  • 所以我更改了 jenkins 正在访问的文件夹的权限。但现在我遇到了另一个问题......当构建过程尝试为我的 android 应用程序的 apk 创建一个 zip 文件时,它再次给了我一个权限被拒绝的错误。
  • -package: [apkbuilder] 当前构建类型与以前的构建不同:强制 apkbuilder 运行。 [apkbuilder] 创建 template-debug-unaligned.apk 并使用调试密钥对其进行签名... -post-package: -do-debug: [zipalign] 在最终 apk 上运行 zip align...
  • BUILD FAILED /home/tanzeelrana/android-sdk-linux/tools/ant/build.xml:1026:执行此行时出现以下错误:/home/tanzeelrana/android-sdk-linux /tools/ant/build.xml:1028:执行此行时发生以下错误:/home/tanzeelrana/android-sdk-linux/tools/ant/build.xml:340:执行失败:java.io.IOException:无法运行程序“/home/tanzeelrana/android-sdk-linux/tools/zipalign”:error=13,在 java.lang.Runtime.exec( Runtime.java:615)
  • 这是一个纯粹的 unix 权限问题 - 您缺少该文件夹的权限。可以尝试将两个用户放在同一个组中(假设该组有足够的权限写入该文件夹)。
猜你喜欢
  • 2021-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多