3

從Jenkins運行作業時遇到java.lang.UnsatisfiedLinkError問題。如何在Jenkins上設置LD_LIBRARY_PATH

<error message="no JSTAF in java.library.path" type="java.lang.UnsatisfiedLinkError">java.lang.UnsatisfiedLinkError: no JSTAF in java.library.path 
     at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681) 
     at java.lang.Runtime.loadLibrary0(Runtime.java:840) 
     at java.lang.System.loadLibrary(System.java:1047) 

基本上我需要設置LD_LIBRARY_PATH當這個設置,它的工作原理命令行執行罰款。例如,當我設置LD_LIBRARY_PATH像以下:

export LD_LIBRARY_PATH=</proj/lib>:$LD_LIBRARY_PATH 

在設置時,代碼的執行的工作命令行細。

我試圖設置這個LD_LIBRARY_PATH使用EnvInjectPlugin並注入了LD_LIBRARY_PATH

但我不確定爲什麼詹金斯沒有拿起這LD_LIBRARY_PATH。如何設置這個Jenkins的工作執行將起作用?

回答

3

我昨天張貼在這裏回答類似的問題:KDevelop4: Error while loading shared libraries

在實踐中,LD_LIBRARY_PATH在許多Linux操作系統已經過時了。在啓動Jenkins之前,使用/etc/ld.so.conf.d中的config文件並運行ldconfig。 (見上述引用的郵政)

EDIT [溶液]:

在聊天在討論之後,問題已經解決通過添加:

#!/bin/bash 
export LD_LYBRARY_PATH=${LD_LIBRARY_PATH}:<myPathForJenkins> 
在很短的腳本

/等/profile.d/並將其設置爲可執行chmod +x

+0

我不清楚在哪裏添加對我的的引用。我沒有在我的系統中看到/etc/ld.so.conf/libc.conf。 – Exploring

+0

你在運行什麼操作系統? – Danduk82

+0

紅帽企業Linux服務器版本6.3(聖地亞哥) – Exploring