有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

eclipse获取Java库的路径

因此,我正在创建一个javafx媒体类的新实例

new Media("file://" + <path>);

我遇到的问题是,我需要创建Eclipse中附加的类文件夹(“/music/launcher.wav”)的路径。我可以使用以下命令使其在Eclipse中工作:

this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath()

方法,然后添加。replaceAll(“/bin/com/faris/game”,”),但这只是对Eclipse调试的修复,而不是实际导出的jar文件。如何获取导出jar文件中类文件夹的位置


共 (1) 个答案

  1. # 1 楼答案

    这种方法:

    this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath()
    

    返回jar文件位置(有关空格问题,请检查此处How to get the path of a running JAR file?) 等你拿到票后。jar位置你必须有你的资源,比如com/music/launcher。wav(com.music package),要以编程方式访问资源,必须使用。jar位置,并将您的资源位置添加到此位置,如下所示:

    String resources = "/com/music/launcher.wav";
    this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath()+resources;
    

    您也可以将资源添加为库,将其压缩为ZIP,但随后需要通过代码(不难但更复杂)将其解压缩以供使用,您可以使用与资源相同的方式访问lib文件夹,只需按如下方式替换字符串资源:

    String resoruces = "/lib/launcher.zip"
    

    如果你能让它工作,请告诉我