首先我假设问题是由于Jenkins没有权限写入Android模拟器。所以这可能是我想知道的第一件事。但这是我正在做的事情的背景,请注意,所有这些在Jenkins之外都可以正常工作。另外需要注意的是我已将Jenkins设置为作为服务运行。
我有一个在Jenkins运行的工作,PULL_SCREENSHOT安装一个应用程序并在Android模拟器上运行一些测试,因为我已经说过我正在使用Jenkins的Android Emulator插件。在Jenkins作业的模拟器配置部分中,我使用的是使用ADB.exe创建的现有设备。我遇到的问题是测试应该使用此代码创建屏幕截图目录。
final String path = Environment.getExternalStorageDirectory()+ "/screenshots/";
File dir = new File(path);
if (!dir.exists())
{
dir.mkdirs();
}
但是这个目录没有创建,我查看了文件系统,看看它是否出现了与正常情况不同的地方,但没有运气。
这是Jenkins控制台的错误。
* \ users \ jamiemirl.jenkins \ jobs \ PULL_SCREENSHOTS \ workspace> adb pull / sdcard / screenshots c:/ screenshots / 远程对象'/ sdcard / screenshots'不存在 \ users.jenkins \ jobs \ PULL_SCREENSHOTS \ workspace>退出1 构建步骤'执行Windows批处理命令'将构建标记为失败 完成:失败*