本文共 1116 字,大约阅读时间需要 3 分钟。
我一直在墙上撞了大约一个小时:我正试图将一个简单的属性(
java.library.path)传递给exec-maven-plugin.目标是将其与Netbeans右键单击文件集成>运行文件过程.
所以我把我的POM设置成这样:
org.codehaus.mojo
exec-maven-plugin
1.1.1
native/win32-x86
(我使用旧版本,所以我可以看到执行参数,但它完全可以重现1.2)
然后我右键单击我的文件并单击“运行文件”. Netbeans开始这个过程:
W:\programming\apache-maven-2.2.1\bin\mvn.bat -Dexec.classpathScope=runtime -Dexec.args=-classpath %classpath org.quackedcube.camera.CameraDemo -Dexec.executable=C:\Program Files\Java\jdk1.6.0_21\bin\java.exe -Dnetbeans.execution=true -Dmaven.repo.local=W:\programming\maven-repo process-classes exec:exec
(原始的完整类路径执行更改为exec:exec所以希望我的配置应用)
但我的环境变量显然被忽略了,因为生成的执行程序是:
Result of cmd.exe /X /C ""C:\Program Files\Java\jdk1.6.0_21\bin\java.exe" -classpath *snip* org.quackedcube.camera.CameraDemo" execution is: '1'.
我试过了
>在enviornmentVariable标记内使用单独的Key和Value标记
>直接在enviornmentVariables标记内使用键和值标记(值得一试)
>结合相
>作为maven arg传递并使用exec:java代替
>在Project Configuration页面中将-Djava.library.path = native / win32-x86作为Run参数和VM选项传递
一切都失败了.我真的很茫然.
我想这是在maven中使用JNI的缺点:你必须作为参数传递给测试,运行时,模块运行POM和父POM.
所以我的问题是:如何将java.library.path属性传递给已执行的文件?如果它与Netbeans运行文件功能集成将是很好的(因此我不必更改POM中的类名,构建,然后运行)
转载地址:https://blog.csdn.net/weixin_33045961/article/details/114753847 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!