https://www.jianshu.com/p/7c2f34b5f133
按照网上教程配置Jenkins,还没有加复杂的参数设置,最基本的build都fail,本地Android studio编译通过。log 如下,
C:WindowsSystem32configsystemprofile.gradlecaches ransforms-1files-1.1appcompat-v7-26.1.0.aar 5c0b4777c5dc48a4a10adf8ff0bb34a esdrawable-hdpi-v4abc_ic_menu_share_mtrl_alpha.png: error: file not found.
C:WindowsSystem32configsystemprofile.gradlecaches ransforms-1files-1.1design-26.1.0.aar8618dd80b49572c8bf351aec2a95032c eslayoutdesign_navigation_item.xml: error: file not found.
C:WindowsSystem32configsystemprofile.gradlecaches ransforms-1files-1.1appcompat-v7-26.1.0.aar 5c0b4777c5dc48a4a10adf8ff0bb34a eslayoutabc_action_bar_up_container.xml: error: file not found.
C:WindowsSystem32configsystemprofile.gradlecaches ransforms-1files-1.1play-services-base-9.0.2.aar3bac6c3e2556d905514d01e21e6c6704 esdrawablecommon_google_signin_btn_text_dark.xml: error: file not found.
网上很多答案都是,在gradle.properties中加入android.enableBuildCache=false和android.enableAapt2=true,但是并没有用。而且BuildCache去掉了还是会影响build的。https://stackoverflow.com/questions/43674890/jenkins-gradle-appmergedebugresources-unable-to-open-png-file/51320353#51320353
上面fail的原因应该是路径过长,Windows下Jenkins首先就去C:WindowsSystem32config里找,而我们知道.gradle本身是在C:Userssomeuser路径下的,所以只要在Jenkins --> Manage Jenkins --> Configurate System下,增加一个Environment Variable,健:GRADLE_USER_HOME,值:C:/Users/someuser,同时在Windows的环境变量里也添加一个同样的。就可以了。
最后这个bug在Windows10上有,Mac上没有。
后记,今天偶然发现的,不需要设置USER_HOME环境变量,只要在job config的build中,勾选 Force GRADLE_USER_HOME to use workspace即可。