解決Jenkins下java無法運行slave-agent jnlp程序連接Windows Slave主機
by:授客 QQ:1033553122
測試環境
java下載地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html
Jenkins war 1.642
Win7 64位
問題描述
cmd窗口下運行程序javaws程序,如下:
javaws http://192.168.1.10:8082/jenkins/computer/192.168.9.98/slave-agent.jnlp
結果如下,提示“無法啟動該應用程序”,點擊詳情后提示如下,無法加載指定的文件
解決過程
1、直接在瀏覽器中訪問以下網址
http://192.168.1.10:8082/jenkins/computer/192.168.9.98/slave-agent.jnlp
結果,提示沒有權限,找相關人員開放權限后重試,發現可以下載slave-agent.jnlp
2、試着不通過url方式,直接運行下載到本地的salve-agent.jnlp,
C:\Users\yunnex>javaws F:\Download\slave-agent.jnlp
結果如下
如上,通過提示,可看到安裝jdk中自帶jar版本過低(當時安裝java jdk 1.6)
3、卸載老版本java,jdk,並安裝1.8.0_91版本的jdk,重試
結果如下,提示“應用程序已被Java安全阻止”
怎么辦?見第4點
4、解決步驟3中的問題
解決方法:如下,打開“控制面板 -> 程序 -> Java”
打開“安全”選項卡,點擊“編輯站點列表”,打開彈窗中添加例外站點,如下
注意:這里站點必須包含host及對應的端口,且遵守上述形式
5、再次運行javaws程序
結果,提示如下,勾選“我接受風險……”復選框,點擊“運行”,結果成功了
6、其它可能會遇到的問題
6.1 防火牆未開放對應端口,會造成無法連接
6.2 運行jnlp文件時,請求的地址和jenkins的訪問地址不一樣
解決方法:Jenkins -> ”系統管理” -> “系統設置”,如下,找到“Jenkins Location” -> “Jenkins URL”,把其中的URL地址改成jenkins的訪問網址
備注:
1)這個問題是筆者使用虛擬機,更改jenkins訪問地址和端口后遇到的
2) 如果這樣改后還不行,用notepad等工具打開下載的jnlp文件,編輯替換對應ip和端口。
參考連接: