Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当前Mac OS X的DYLD_库_路径不工作?_Java_Macos_Dyld_Java.library.path - Fatal编程技术网

Java 当前Mac OS X的DYLD_库_路径不工作?

Java 当前Mac OS X的DYLD_库_路径不工作?,java,macos,dyld,java.library.path,Java,Macos,Dyld,Java.library.path,我的目标是使sybase的jodbc驱动程序与我的gradle版本一起工作。但是系统/bin64/sa_config.sh没有按预期工作。此脚本修改/追加DYLD\u LIBRARY\u路径(请参阅脚本提取): 但是找不到lib64目录中的库 为了更容易地检查发生了什么,我尝试了这个方法。sybase脚本使用可能性3。我更改了chilkatsoft库的脚本,以检查是否可以加载chilkasoft驱动程序。但是DYLD_LIBRARY_路径定义不起作用(其他选项,如-Djava.LIBRARY.P

我的目标是使sybase的jodbc驱动程序与我的gradle版本一起工作。但是
系统/bin64/sa_config.sh
没有按预期工作。此脚本修改/追加
DYLD\u LIBRARY\u路径
(请参阅脚本提取):

但是找不到
lib64
目录中的库

为了更容易地检查发生了什么,我尝试了这个方法。sybase脚本使用可能性3。我更改了chilkatsoft库的脚本,以检查是否可以加载chilkasoft驱动程序。但是DYLD_LIBRARY_路径定义不起作用(其他选项,如
-Djava.LIBRARY.PATH=“PATH/to/LIBRARY”
正在使用这个小示例)

我添加了一个子目录
myTestDir
,其中包括我的测试脚本,因为jnilib总是在根目录中搜索。这是我的测试脚本:

#!/bin/bash
java -version
javac -encoding utf8 -classpath ".:./chilkat.jar" Test.java
BASE_PATH="/Users/Wagner/Desktop/testLIB/chilkatJava-9.5.0-jdk6-macosx/"

echo "################## TEST: with environment variables ########################"
DYLD_LIBRARY_PATH=$BASE_PATH
export DYLD_LIBRARY_PATH
echo "DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH"

java -classpath ".:./chilkat.jar" Test

echo "################## TEST: with absolut path at -Djava.library.path ########################"
java -Djava.library.path=$BASE_PATH -classpath ".:./chilkat.jar" Test

echo "################## TEST: with realative path at -Djava.library.path ########################"
java -Djava.library.path=.. -classpath ".:./chilkat.jar" Test
这表明
DYLD\u LIBRARY\u路径
未添加到
java.LIBRARY.PATH
,并且它不工作。但是直接使用
java.library.path
是成功的。见输出:

myTestDir  ./myTest.sh
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)
################## TEST: with environment variables ########################
DYLD_LIBRARY_PATH=/Users/Wagner/Desktop/testLIB/chilkatJava-9.5.0-jdk6-macosx/
***** INFOS *****
java.library.path=/Users/Wagner/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
***** LOAD LIBRARY *****
Native code library failed to load.
java.lang.UnsatisfiedLinkError: no chilkat in java.library.path
################## TEST: with absolut path at -Djava.library.path ########################
***** INFOS *****
java.library.path=/Users/Wagner/Desktop/testLIB/chilkatJava-9.5.0-jdk6-macosx/
***** LOAD LIBRARY *****
***** LIBRARY LOADED *****
9.5.0.56
################## TEST: with realative path at -Djava.library.path ########################
***** INFOS *****
java.library.path=..
***** LOAD LIBRARY *****
***** LIBRARY LOADED *****
9.5.0.56
Wagner  ... | testLIB | chilkatJava-9.5.0-jdk6-macosx | myTestDir
我使用的是当前的MacOSX版本和所有更新(10.11.5)。有人有没有办法用
DYLD\u LIBRARY:PATH


提前感谢并致以最诚挚的问候,Oli

我无能为力,但由于升级到OS X 10.11.5,我的ImageMagick安装似乎已停止工作。我知道DYLD_LIBRARY_PATH的行为与系统完整性保护有关,所以我认为苹果在10.11.5中做了一些改变。很讨厌
myTestDir  ./myTest.sh
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)
################## TEST: with environment variables ########################
DYLD_LIBRARY_PATH=/Users/Wagner/Desktop/testLIB/chilkatJava-9.5.0-jdk6-macosx/
***** INFOS *****
java.library.path=/Users/Wagner/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
***** LOAD LIBRARY *****
Native code library failed to load.
java.lang.UnsatisfiedLinkError: no chilkat in java.library.path
################## TEST: with absolut path at -Djava.library.path ########################
***** INFOS *****
java.library.path=/Users/Wagner/Desktop/testLIB/chilkatJava-9.5.0-jdk6-macosx/
***** LOAD LIBRARY *****
***** LIBRARY LOADED *****
9.5.0.56
################## TEST: with realative path at -Djava.library.path ########################
***** INFOS *****
java.library.path=..
***** LOAD LIBRARY *****
***** LIBRARY LOADED *****
9.5.0.56
Wagner  ... | testLIB | chilkatJava-9.5.0-jdk6-macosx | myTestDir