我正在尝试将文件路径作为参数传递到Windows上,以便在JAVA
JNLP
中打开。从原始JAR文件开始,我创建了一个包装器BATCH
文件runMyJar.bat
:
java -jar "%~dp0MyJarFile.jar" %*
然后我配置窗口打开所有*.test
文件,我的runMyJar.bat
工作正常:当我双击任何*.test
文件时,它运行MyJarFile.jar
并传递路径*.test
文件。
现在,我想对JNLP
进行同样的操作,将我的JAR
部署到webstart,但为我的应用程序提供Windows Open with...
。所以我的想法是再次提供一个BATCH
包装文件:
javaws -open %1 "http://urlToMyJNLP"
不幸的是,这不起作用。使用文件启动此包装批处理时,我只是在static void main
方法中为参数args
接收空对象。
感谢任何帮助。
更新
根据答案我总结了here。
答案 0 :(得分:1)
可能是由于Java的安全更新,你将arugments传递给javaws的方法不再适用。
您是否尝试过使用jnlp中的“association”标签来实现目标?
另一种选择是使用属性传递参数,然后在java代码中读取该属性:
javaws -J-Djnlp.arg0=%1 thefile.jnlp