这是有问题的2个文件的图片,一个.atb和一个.jar
如果我只是点击jar文件,它会顺利打开我的程序,没有问题。 如果我单击“新建文本文档”并选择“y”作为我的默认程序,则会显示:
如果我用.txt作为文件扩展名完成所有这一切,它说的相同,仍然无法正常工作。
如果我在Windows 7中使用相同的设置完成所有这些操作,一切正常。
此外,当我发生这种情况时,我检查了我的事件日志,并弹出一个关键字“审核成功”,文本为:“试图查询帐户是否存在空白密码。”
你知道可能导致这种情况的原因吗?
答案 0 :(得分:2)
您无法关联文件扩展名以在Windows上触发.jar
文件。您可以在Windows上触发的唯一文件类型是.exe
,.pif
,.com
,.bat
,.cmd
,因此不会触发.jar
文件,您可以触发.bat
文件,然后启动.jar
文件。
创建一个y.bat
文件并将其放在y.jar
文件旁边,并在其中写下以下代码:
@echo off
title y
start javaw -jar "C:\Users\SomeUsername\Desktop\y.jar" %1
您可以根据需要更改title
和y.jar
路径,只需记住路径必须是绝对路径。虽然这里的真实关键字是%1
,这是您点击的文件的实际路径。
您可以使用%后跟命令行上的数字位置来获取任何参数的值。传递的第一个项目始终为%1,第二个项目始终为%2,依此类推
批处理脚本中的%*引用所有参数(例如%1%2%3%4%5 ...%255)
现在您只需右键单击任何.abt
文件并按“打开方式...”,记得选中“将此应用程序用于所有.abt文件”,然后只需浏览{{1然后单击“打开”。现在,每次双击y.bat
文件时,它都会启动您的.abt
程序。
答案 1 :(得分:1)
您可以通过从命令行运行(具有管理员权限)而无需 bat 文件
assoc .xox=Xoxfile
ftype Xoxfile=C:\Program Files\Java\jre1.5.0\bin\java -jar c:\dev\work\y.jar
(更正当前 jre 的路径和 jar 的路径)。
由于 .txt 已经是 Windows 中定义的文件类型,我认为您可以跳过 assoc 命令并将上面的 Xoxfile 替换为
ftype "Text Document"=C:\Program Files\Java\jre1.5.0\bin\java -jar c:\dev\work\y.jar
但我只使用新的自定义文件类型完成此操作。
答案 2 :(得分:0)
我在.JAR开场时遇到了一个愚蠢的问题。运行“java -jar MyApp.jar”之后,我意识到它没有启动gui,因为我的首选项文件与.jar文件不在同一条路径中。
添加if(!file)检查,然后创建新文件......应用程序按预期工作,并且更容易移植/共享。