我在java swing中创建了一个音乐应用程序,我想将它设置为所有mp3格式文件的默认音乐播放器。有没有人知道怎么做?
就像在截图中所有pdf文件在adobe reader上打开一样。我的应用程序运行正常,我运行它没有问题。目前,我打开了我的应用程序中的文件,但现在我希望每当我双击它在我的应用程序中打开的mp3文件时。
注意:我已经创建了一个可执行文件,但是当我点击打开时,我需要窗口建议打开我的应用程序。
答案 0 :(得分:2)
这里需要的是MP3和你的应用程序之间的文件关联。
实现Java富客户端桌面应用程序的最简单方法是使用Java Web Start。
JWS提供了许多吸引人的功能,包括但不限于启动屏幕,桌面集成,文件关联,自动更新(包括延迟下载和程序控制更新),本地分区和&按平台,体系结构或语言环境下载的其他资源,运行时环境的配置(最低J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源..
答案 1 :(得分:1)
非常简单:.jar
- 文件本身不可执行。 JVM是可运行的。解决方法是在例如C
或C++
中编写包装器应用程序并将其编译为可执行文件。或者使用像launch4j这样的包装器库。您可以在此处找到有关这些包装的更多信息:wrapper-libraries for java
如果您绝对想要在java-app中编辑文件关联,可以使用JDIC来完成该任务。
boolean editDefaultApplication(){
AssociationService serv = new AssociationService();
//try to remove old association
Association logassoc = serv.getFileExtensionAssociation(".mp3");
try {
serv.unregisterUserAssociation(logassoc);
} catch (java.lang.IllegalArgumentException | AssociationNotRegisteredException | RegisterFailedException e) {
e.printStackTrace();
return false;
}
//add your own application as default
logassoc.addFileExtension(".mp3");
logassoc.addAction(new org.jdesktop.jdic.filetypes.Action("open", "<path to wrapper executable>"));
try {
serv.registerUserAssociation(logassoc);
} catch (java.lang.IllegalArgumentException | AssociationNotRegisteredException | RegisterFailedException e) {
e.printStackTrace();
return false;
}
return true;
}
答案 2 :(得分:-1)
Shift +右键单击mp3文件,选择“打开方式”。现在,在打开的对话框中选择您的可执行文件并选中“始终打开”
使用jar文件,你可以执行java.exe传递参数java -jar yourjarname.jar