繁体   English   中英

使用Java代码创建.jar的快捷方式

[英]Create shortcut to .jar using java-code

我为Java应用程序编写了一个更新程序,该更新程序可在线下载其最新的jar文件,并在启动新jar并最终将其自身删除之前替换其快捷方式。

我使用以下代码创建了快捷方式:

try {
    //Location of shortcut -> Working
    String address = "C:\\Users\\"+System.getProperty("user.name")+"\\Desktop\\App.lnk";

    //Delete old shortcut -> Not working
    File f = new File(address);
    f.delete();

    //Create new shortcut
    FileWriter fw = new FileWriter(address);
    fw.write("[Program]\n"); //Probably wrong section but cannot find real one
    fw.write("FILE=" + (new File(App.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getPath()) + "App-"+version+".jar\n"); //Shortcut to newest version
    fw.flush();
    fw.close();
} catch (URISyntaxException e) {e.printStackTrace();}

该代码确实创建了一个文件,但它似乎已损坏,所以我的问题是我在这里做错了什么?

它是这样工作的:

ShellLink shortcut = ShellLink.createLink("App.jar").setWorkingDir(new File(".").getAbsolutePath());
shortcut.getHeader().getLinkFlags().setAllowLinkToLink();
shortcut.saveTo("C:\\Users\\"+System.getProperty("user.name")+"\\Desktop\\App.lnk");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM