android - Jenkins 无法存档调试 apk

标签 android continuous-integration jenkins apk

我正在尝试设置 jenkins 以构建 Android 应用程序和存档构建。 但是,我似乎无法存档调试 apk。 Ant 以“clean debug”运行,并选择了“archive artifacts”。我尝试使用 */.apk 和 bin/test-debug.apk,这是我想要的文件(并且可以通过 jenkins 工作区浏览器看到。

控制台日志:

Started by user anonymous
Building in workspace /var/lib/jenkins/jobs/test-project/workspace
Checkout:workspace / /var/lib/jenkins/jobs/test-project/workspace - hudson.remoting.LocalChannel@eb3f66
Using strategy: Default
Last Built Revision: Revision bae064038961f07de92252f6f65d222e90d2d871 (origin/HEAD, origin/master)
Checkout:workspace / /var/lib/jenkins/jobs/test-project/workspace - hudson.remoting.LocalChannel@eb3f66
Fetching changes from 1 remote Git repository
Fetching upstream changes from /home/andraz/test/.git
Seen branch in repository origin/HEAD
Seen branch in repository origin/master
Commencing build of Revision bae064038961f07de92252f6f65d222e90d2d871 (origin/HEAD, origin/master)
Checking out Revision bae064038961f07de92252f6f65d222e90d2d871 (origin/HEAD, origin/master)
Warning : There are multiple branch changesets here
[workspace] $ ant -Dsdk.dir=/home/andraz/android-sdk-linux clean debug
Buildfile: /var/lib/jenkins/jobs/test-project/workspace/build.xml

-pre-clean:

clean:
   [delete] Deleting directory /var/lib/jenkins/jobs/test-project/workspace/bin
   [delete] Deleting directory /var/lib/jenkins/jobs/test-project/workspace/gen

-set-mode-check:

-set-debug-files:

-set-debug-mode:

-debug-obfuscation-check:

-setup:
     [echo] Creating output directories if needed...
    [mkdir] Created dir: /var/lib/jenkins/jobs/test-project/workspace/bin
    [mkdir] Created dir: /var/lib/jenkins/jobs/test-project/workspace/bin/res
     [echo] Gathering info for test...
    [setup] Android SDK Tools Revision 17
    [setup] Project Target: Android 2.2
    [setup] API level: 8
    [setup] 
    [setup] ------------------
    [setup] Resolving library dependencies:
    [setup] No library dependencies.
    [setup] 
    [setup] ------------------
    [setup] API<=15: Adding annotations.jar to the classpath.
    [setup] 
    [setup] ------------------
    [setup] WARNING: No minSdkVersion value set. Application will install on all Android versions.

-build-setup:
    [mkdir] Created dir: /var/lib/jenkins/jobs/test-project/workspace/gen
    [mkdir] Created dir: /var/lib/jenkins/jobs/test-project/workspace/bin/classes

-pre-build:

-code-gen:
     [echo] ----------
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
     [echo] ----------
     [echo] Handling Resources...
     [aapt] Generating resource IDs...
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.

-pre-compile:

-compile:
    [javac] Compiling 4 source files to /var/lib/jenkins/jobs/test-project/workspace/bin/classes

-post-compile:

-obfuscate:

-dex:
      [dex] Converting compiled files and external libraries into /var/lib/jenkins/jobs/test-project/workspace/bin/classes.dex...

-crunch:
   [crunch] Crunching PNG Files in source dir: /var/lib/jenkins/jobs/test-project/workspace/res
   [crunch] To destination dir: /var/lib/jenkins/jobs/test-project/workspace/bin/res
   [crunch] Crunched 0 PNG files to update cache

-package-resources:
     [aapt] Creating full resource package...

-package:
[apkbuilder] Current build type is different than previous build: forced apkbuilder run.
[apkbuilder] Creating test-debug-unaligned.apk and signing it with a debug key...

-post-package:

-do-debug:
 [zipalign] Running zip align on final apk...
     [echo] Debug Package: /var/lib/jenkins/jobs/test-project/workspace/bin/test-debug.apk
[propertyfile] Creating new property file: /var/lib/jenkins/jobs/test-project/workspace/bin/build.prop
[propertyfile] Updating property file: /var/lib/jenkins/jobs/test-project/workspace/bin/build.prop
[propertyfile] Updating property file: /var/lib/jenkins/jobs/test-project/workspace/bin/build.prop
[propertyfile] Updating property file: /var/lib/jenkins/jobs/test-project/workspace/bin/build.prop

-post-build:

debug:

BUILD SUCCESSFUL
Total time: 4 seconds
Archiving artifacts
ERROR: No artifacts found that match the file pattern "**/*.apk". Configuration error?
Build step 'Archive the artifacts' changed build result to FAILURE
Finished: FAILURE

在我看来,文件已生成但不知何故找不到。 另外,如果我选择存档 bin/test*,它会存储 test-debug-unaligned.apk.d、test.apk_、test.apk.d 但没有 apk 有什么见解吗?

最佳答案

当归档发生时,文件似乎根本不存在。作为最后一个构建步骤,运行执行 ls -l bin 的 shell 脚本,并通过检查控制台输出来查看文件是否确实存在。

关于android - Jenkins 无法存档调试 apk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9903428/

相关文章:

android - WebView 用户代理

android - Android 版 OpenGL ES 中的透明纹理

android - TextView 是否缩放其字体大小以填充父级?

android - 使用android相机捕获视频后的空指针

ios - Xcrun 没有嵌入传递的配置文件

azure - 在 CI/CD 过程中管理 csproj 文件

postgresql - 如何在 Github Action 中将配置参数添加到 postgres 服务容器?

java - 需要帮助使用 java 将文件从本地计算机复制到远程计算机

curl - Jenkins 工作失败,无法从 curl 获得非 200 响应

java - 您可以使用 Jenkins 部署到 Weblogic,然后针对部署运行 SoapUI 测试吗?