我期待以编程方式设置VM参数Djava.library.path.如果无法做到这一点,有哪些替代方案(如果有的话)?
使用此方法可以轻松解决此问题:
public static void addLibraryPath(String pathToAdd) throws Exception {
Field usrPathsField = ClassLoader.class.getDeclaredField("usr_paths");
usrPathsField.setAccessible(true);
String[] paths = (String[]) usrPathsField.get(null);
for (String path : paths)
if (path.equals(pathToAdd))
return;
String[] newPaths = Arrays.copyOf(paths, paths.length + 1);
newPaths[newPaths.length - 1] = pathToAdd;
usrPathsField.set(null, newPaths);
}
Run Code Online (Sandbox Code Playgroud)
看看这个java文档http://docs.oracle.com/javase/6/docs/api/java/lang/System.html#setProperty(java.lang.String , java.lang.String)
您想调用 setProperty(String, String) 方法。
所以在你的情况下它看起来像这样
System.setProperty("java.library.path","value_you_want");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10111 次 |
| 最近记录: |