我正在使用Jenkins 1.646。我一直在「管理舊數據」部分獲取「不可讀數據」條目。Jenkins中的不可讀數據(CannotResolveClassException)
這些條目出現相當多的是在我的自由泳項目時每次構建。構建完成很好。有誰知道我需要做什麼來糾正這個問題?我最近安裝了Pipeline插件,並且安裝了十幾個插件,所以我的猜測是某些東西與我的jenkins版本和/或已安裝的其他插件不兼容。
我正在使用Jenkins 1.646。我一直在「管理舊數據」部分獲取「不可讀數據」條目。Jenkins中的不可讀數據(CannotResolveClassException)
這些條目出現相當多的是在我的自由泳項目時每次構建。構建完成很好。有誰知道我需要做什麼來糾正這個問題?我最近安裝了Pipeline插件,並且安裝了十幾個插件,所以我的猜測是某些東西與我的jenkins版本和/或已安裝的其他插件不兼容。
我想我想通了。我發現VariableInjectionAction是我們在其中一個構建步驟中使用的特定於域的類內部類。我們使用每個構建的GroovyClassLoader將其父類動態加載到類路徑中。看起來jenkins正在試圖跟蹤用於運行特定構建的groovy腳本的所有類,由於這是一個動態加載的內部類,因此jenkins無法找到歸檔構建的類,因此給出上面的錯誤。
我認爲如果我們不同地加載我們的groovy腳本,錯誤會消失,將它們預編譯放在根jenkins類路徑中。目前,由於構建運行良好,我們可能只需要定期清理不可讀數據。
另外,這顯然沒有任何關係與最近安裝的插件衝突,正如我第一次想到的。