Mac下配置Jenkins + Grandle + Github

来源:互联网 发布:临沂淘宝拍照 编辑:程序博客网 时间:2024/06/05 10:58

        貌似网上关于Jekins的配置资料不多,而Mac OS 上的资料更是少之又少,故此记录下自己的配置过程,希望可以给后来人一点帮助,

在配置过程中遇到如下问题:

  1. pull代码一直失败
  2. jdk安装错误(一直误以为自己安装成功)
  3. jekens无法失败出android sdk路径问题
  4. jekens中gradle文件路径配置错误
  5. gradle出现:Execution failed for task ':lint'.> Can't connect to window server - not enough permissions.问题
  6. 通过Copy方式创建的Project无法顺利构建

参考资料:

http://blog.csdn.net/john_cdy/article/details/7738393

http://www.cnblogs.com/dubing/p/3628851.html

http://my.oschina.net/uboluo/blog/157483

https://wiki.jenkins-ci.org/display/JENKINS/Building+an+Android+app+and+test+project  (Jekins官方文档)


安装是比较简单的过程,参考上面的第一篇文章就能搞定。

下面挨着记录下遇到的问题和解决方案

问题1:

using .gitcredentials to set credentialsERROR: Timeout after 10 minutesFATAL: Failed to fetch from https://github.com/PGWireless/Camera360-Android-5.0hudson.plugins.git.GitException: Failed to fetch from https://github.com/PGWireless/Camera360-Android-5.0at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:623)at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:855)at hudson.plugins.git.GitSCM.checkout(GitSCM.java:880)at hudson.model.AbstractProject.checkout(AbstractProject.java:1251)at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:605)at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:514)at hudson.model.Run.execute(Run.java:1703)at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)at hudson.model.ResourceController.execute(ResourceController.java:88)at hudson.model.Executor.run(Executor.java:231)Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress https://github.com/PGWireless/Camera360-Android-5.0 
百思不得其解,后来折腾了很久终于找到了第二个链接的文章:《windows下jenkins常见问题填坑》

原文如下:

github私有项目,主要也就是ssh授权的问题,这里的坑不是权限认证问题,而是github插件的时限问题,默认是10分钟,由于某些项目可能资源比较大,第一次pull的时候耗费时间比较长,但是控制台提示一直停留在认证那个阶段,让操作人员误以为是认证问题,这个估计也算个坑吧。填坑方法如下图:



非常感谢原文作者的帮助,解决了这个问题。其实自己是有猜想到这方面原因的,但是一直找不到怎么修改outtime的设置。


问题2:

问题表现:在Console Output中出现如下异常:

ERROR: JAVA_HOME is set to an invalid directory:> /Users/Shared/Jenkins/Home/tools/hudson.model.JDK/jd6ku45

解决办法:

不采用官方文档的安装方式,取消“Install automatically”复选框,在JAVA_HOME里配置上JDK的绝对路径。

        这个问题是比较郁闷的,安装JDK是完全按照官方文档进行的,但是不知道为什么jekins没有正确安装JDK而且没有报错在这个问题上卡很久,后来终于在Build history 的Console Output中看到错误提示 :ERROR: JAVA_HOME is set to an invalid directory: /Users/Shared/Jenkins/Home/tools/hudson.model.JDK/jd6ku45,知道问题是找不到JDK。所以说一定要多看Console Output的信息

问题3和问题4:

问题原因和解决办法如上,细节有差别,看看Console Output的信息一眼就明白了


问题5:

           Mac上的问题,我找了很多文章,尝试了一些方法,都没有解决,不过由于我们真正的CI服务器是Ubuntu系统,在Ubuntu上搭建Jenkins是没有遇到这个问题的。 
           最后终于找到原因,这是JDK在MAC上的一个bug,升级到最新的jdk就行了。    (2014.05.18)
           http://stackoverflow.com/questions/17951274/sonar-throws-in-headless-environment-on-a-mac

问题6:

          问题表现:代码始终pull失败;
          解决办法:重新创建并配置这个新的Project即可
          问题背景:是想偷懒提高效率的,原计划是copy之前的工程,修改下代码仓的URL就好了,结果直接无法拉去代码。
          问题分析:考虑到可能是copy导致问题的时候,就立即copy了一个一模一样的test Project(很小,只有不到100k),只是换了一个名字,果然问题也出现了。
          跟进处理: 后来升级到最新的Jenkins就没有这个问题了

这片文章不再update了,因为服务器采用Ubuntu。





0 0
原创粉丝点击