我已閱讀jenkins頁面上的文檔以及其他一些留言板,並且他們似乎都使用Tomcat提供了他們的教程(ewwww)! !!。我的任務是爲了可維護性原因提供Jenkins作爲獨立服務。到目前爲止,我已經設置了HUDSONHOME,CLASSPATH和JAVA_HOME。我的Java版本是在沒有Tomcat或Apache的情況下在Linux中配置Jenkins(獨立服務)使用Borlands StarTeam
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.7) (rhel-1.39.1.9.7.el6-x86_64)
OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)
和我有/etc/profile.d中的腳本執行以下操作:
JAVA_HOME=/usr/java;
JRE_HOME=/usr/java/jre/bin;
if [ "${CLASSPATH}" == "" ]; then
CLASSPATH=/var/lib/jenkins/war/WEB-INF;
HUDSON_HOME=/var/lib/jenkins/war/WEB-INF;
else
CLASSPATH=${CLASSPATH}:/var/lib/jenkins/war/WEB-INF;
HUDSON_HOME=/var/lib/jenkins/war/WEB-INF;
fi
PATH=${PATH}:${JAVA_HOME}/bin:/opt/StarTeamCP_2009/bin:/opt/QtSDK/Desktop/Qt/474/gcc/bin:/opt/QtSDK/QtCreator/bin/:${CLASSPATH}:${HUDSON_HOME};
export JAVA_HOME;
export PATH;
export CLASPATH;
展望/ etc/passwd中,詹金斯默認shell是bash所以沒有需要一個csh版本的腳本。作爲用戶,我可以在所有變量設置正確的情況下登錄。我從他們的主頁RPM link安裝了Jenkins RPM。
我從詹金斯輸出窗口得到的錯誤是:
FATAL: com/starbase/starteam/Folder
java.lang.NoClassDefFoundError: com/starbase/starteam/Folder
at hudson.plugins.starteam.StarTeamSCM.checkout(StarTeamSCM.java:127)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1195)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:576)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:465)
at hudson.model.Run.run(Run.java:1404)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:238)
Caused by: java.lang.ClassNotFoundException: com.starbase.starteam.Folder
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 8 more
我缺少什麼?
至於你的「未找到類」異常,你拉動不在Tomcat或詹金斯的零件庫,和他們顯然取決於也不在Tomcat或詹金斯項目。這導致了一個問題:「如果你想運行非Borland應用程序,爲什麼要用Borland庫來填充你的環境?」
爲了迴應這個問題,我使用了Starteam Plugin作爲Jenkins的一部分。 Jenkins需要知道Borland .jar文件中包含的StarTeam類的定義。
貌似同樣的問題在這裏:http://stackoverflow.com/questions/5163763/how-to-configure-jenkins-starteam-plugin –