签名和对齐apk步骤:找不到与搜索模式匹配的文件

时间:2017-03-07 21:09:55

标签: android visual-studio-2015 azure-devops tfs2013

最近,我创建了一个池代理,用于在TFS中自动化Xamarin Forms(Android)的构建定义。虽然几乎所有步骤都运行成功,但签名和对齐apk步骤会引发错误:

enter image description here

根据错误,在C:\ agent_work \ 1 \ b \ release * .apk中找不到apk,但是在构建过程中我去了文件夹检查它,我找到了文件:

enter image description here

我无法理解为什么会出错。请你帮忙!这里为步骤构建定义:

enter image description here

1 个答案:

答案 0 :(得分:1)

我解决了它:

APK文件的签名过程取决于名为jarsigner的Java工具。我的Xamarin项目在Visual Studio中执行的Java编译是使用JDK 8(Jdk 1.8.0_111)完成的,但是在查看Team Services Build Agent编译的JDK版本时,它依赖于它从中识别的Environment的变量。系统并在Team Services中安装代理时将其注册在功能中。 %JAVA_HOME%使用的是JDK 7构建路径,不同于Visual Studio用于同一解决方案的路径:

enter image description here

Visual Studio解决方案:

enter image description here

我实际上在我的PC上安装了两个Java版本,并且因为自首次安装代理以来,系统功能已内置到Visual Team Services中,所以它识别了操作系统的环境变量中为%JAVA_HOME%配置的路径,因此有必要调整此变量的路径,卸载代理并再次重新安装。随后编译已生成其他错误:未设置JAVA_HOME,未设置ANDROID_HOME。这是通过在Team Services中将它们添加为预定义变量来解决的:

enter image description here

就是这样!成功建设:

enter image description here