我按照以下说明在 Windows 中成功创建了一个自定义 URL 协议,该协议针对我创建的一个简单 jar,我可以通过执行此命令手动运行此 jar(java 在 PATH 中):
java -jar test.jar
但是当我打开一个使用我的自定义协议的 URL 时,它不会执行 jar,协议应该执行相同的命令,这就是它在注册表编辑器中的样子:
"C:\Program Files\Java\jdk1.8.0_152\bin\java.exe -jar C:\testFolder\test.jar" "%1"
如果我用一个文件替换 jar,.exe
它可以正常工作,例如notepad.exe
计算器,所以问题在于执行 jar。