在/ usr / bin中从bash运行jar抛出FileNotFoundException

时间:2016-07-15 14:12:15

标签: java linux bash jar

我有一个位于/home/ec2-user/Back-end的jar文件,我希望它可以从任何地方运行,就像普通命令一样。

所以,我在myprogram创建了一个bash文件/usr/bin,然后输入了我的命令java -jar myprogram.jar $*

我可以使用来自任何地方的myprogram命令成功访问我的程序。唯一的问题是它抛出了FileNotFoundException,因为我需要在这个程序中读/写csv文件。

只有在我不在jar文件所在的文件夹中时才会发生这种情况。所以我想它尝试从当前文件夹而不是jar文件夹中读取csv文件,这是我的问题。这就是我想要读取我的csv文件的方法,该文件位于{jar}文件所在的csv文件夹中:new FileReader("csv/"+this.name+".csv")

我从这里How to get the path of a running JAR file?尝试了函数序列,它在Eclipse中运行,但在运行jar时却没有从终端运行(它返回null)。

任何方式使文件相对于jar位置而不是我的位置?否则我将设置一个绝对路径,但我认为它不是最好的解决方案。

0 个答案:

没有答案
相关问题