【问题标题】:Referring executing jar location引用执行 jar 位置
【发布时间】:2015-06-26 05:57:05
【问题描述】:

我已经在这个论坛上看到过类似的问题,但没有一个答案对我有用。这是我想要得到的:我有一个包含多个类的应用程序。我已将其打包为来自 eclipse 的可运行 jar 文件,它工作正常。问题是,在此 jar 所在的同一目录中将存在一个属性文件,并且我必须从我的一个 java 类中引用此属性文件。 jar 文件和属性文件的位置可以是动态的,但它们将位于同一目录中。为此,我尝试了以下方法:

MyClass.class.getProtectionDomain().getCodeSource().getLocation().getPath()    

MyClass.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()

但所有这些都只返回 ./ 就我而言。请帮忙。

【问题讨论】:

  • 我很确定 / just 是 jar 所在的位置
  • 没有。 jar 存在于目录 C:\Users\\Desktop\JarFolder\ABC.jar 中。当我执行 java -jar "C:\Users\\Desktop\JarFolder\ABC.jar" 它返回 ./

标签: java jar classpath executable-jar


【解决方案1】:

路径为您提供了 Jar 的目录或“路径部分”。如果您想要 Jar 文件的名称,您还需要 getFile()

【讨论】:

  • MyClass.class.getProtectionDomain().getCodeSource().getLocation().getFile() 也返回。/请帮忙。
猜你喜欢
  • 2012-07-18
  • 1970-01-01
  • 2015-06-07
  • 1970-01-01
  • 1970-01-01
  • 2018-10-03
  • 2012-11-02
  • 2011-05-05
  • 1970-01-01
相关资源
最近更新 更多