方法一:把编译好的war包放到tomcat到webapps里(Tomcat作为容器)
http://ftp.yz.yamagata-u.ac.jp/pub/misc/jenkins/war-stable/2.150.3/jenkins.war
然后放到tomcat里,在IDEA中配置常规的tomcat的webapps的调试即可。如果碰到字节码与源代码不符合的情况,可以choose source具体的源码配合。
方法二:直接从源码调试:(内置Jelly作为容器?)
先要编译
➜ wget https://codeload.github.com/jenkinsci/jenkins/zip/jenkins-2.137
#重命名zip,解压
➜ cd jenkins-jenkins-2.137
➜ mvn clean install -pl war -am -DskipTests
➜ cd war
➜ mvnDebug org.jenkins-ci.tools:maven-jenkins-dev-plugin:run
等IDEA附加上去之后,才会继续进行。
注意默认会监听在0.0.0.0:8080
要留出这个端口给Jenkins(主要是不知道在哪里修改端口
把下载的源码放到IDEA中,IDEA会自动识别是Jenkins,然后命名为jenkins-parent。
然后把war/target/jenkins/WEB-INF/lib这个目录作为Library,这样IDEA才能帮你反编译jar到Java文件。
参考:http://blog.nsfocus.net/intellij-idea-remote-debugging-jenkins/
然后就可以用IDEA来连接调试了。
https://wiki.jenkins.io/display/JENKINS/Building+Jenkins