0
다른 DYLD_ 속성을 실험 해보았습니다. jvm이 속성으로 조작하고 실행 중에 무시된다는 것을 발견했습니다.
내 자바 시험 :DYLD_PRINT_LIBRARIES가 작동하지 않습니다.
class Env {
public static void main(String... args) {
System.getenv().entrySet().stream().forEach(e -> System.out.println(e.getKey() + " = " + e.getValue()));
}
}
호출 : 다른 측면에서
$ export DYLD_PRINT_LIBRARIES=1
$ export MY_PRINT_LIBRARIES=2
$ javac Env.java && java Env|grep PRINT
MY_PRINT_LIBRARIES = 2
$
, 내 C 테스트 :
#include <stdio.h>
int main(int argc, char **argv, char **envp) {
while (*envp) {
printf("%s\n", *envp);
envp++;
}
return 0;
}
호출 :
$ gcc env.c && ./a.out|grep PRINT
dyld: loaded: /Users/okutane/test/java/./a.out
dyld: loaded: /usr/lib/libSystem.B.dylib
dyld: loaded: /usr/lib/system/libcache.dylib
...
dyld: loaded: /usr/lib/libc++.1.dylib
dyld: loaded: /usr/lib/libDiagnosticMessagesClient.dylib
MY_PRINT_LIBRARIES=2
DYLD_PRINT_LIBRARIES=1
$
나는 expec ted jvm test도 작동합니다. 해결 방법이 있습니까?