gpt4 book ai didi

java - 如何使我的 JAR 在 Netbeans 7 中没有 -Djava.library.path 参数的情况下工作

转载 作者:行者123 更新时间:2023-12-01 13:49:29 25 4
gpt4 key购买 nike

我正在构建一个 JAR 文件,其中包含 VM 选项中的下一个参数:

-Djava.library.path="\lib\win32-x86\"

那里有使我的java应用程序工作所需的.dll文件,我希望我的jar在没有该参数的情况下运行,我通过添加以下代码行修改了build.xml文件:

<target name="compilarJar" depends="clean">
<echo message="-------------- Compila Jar --------------"/>
<javac srcdir="../src/com" destdir="../com" classpathref="classpath" encoding="8859_1" includeantruntime="false">
<compilerarg arg="-Djava.library.path='C:\\Users\\myUser\\Documents\\NetBeansProjects\\CapturaCamaraWeb2\\lib\\win32-x86\\'" />
</javac>

</target>

尝试过绝对路径和相对路径,但都不起作用,如果我能帮助我的 jar 工作,我将不胜感激

最佳答案

您不能将命令行、运行时参数嵌入到编译中。如果要对系统属性进行硬编码,请使用 System.setProperty。您可以修改它以附加到现有的库路径和/或使用相对路径以使其更具可移植性。

System.setProperty("java.library.path", "C:\\Users\\myUser\\Documents\\NetBeansProjects\\CapturaCamaraWeb2\\lib\\win32-x86\\" );
Field fieldSysPath = ClassLoader.class.getDeclaredField( "sys_paths" );
fieldSysPath.setAccessible( true );
fieldSysPath.set( null, null );

关于java - 如何使我的 JAR 在 Netbeans 7 中没有 -Djava.library.path 参数的情况下工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20081389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com