我已经实现了一个Java类,它通过相对路径处理.txt-Format文件。它在Eclipse中执行时运行良好。 但是,如果我在Eclipse之外的Java JRE中执行(未更改的)编译文件,我将收到java.io.FileNotFoundException。
我实施了new File(".").getCanonicalPath()
并找到了问题的根源:
在Eclipse中执行我得到了回复:C:\Users\xy\git\Project\Project
在Java 8 JRE中执行我得到了回复:C:\Users\xy\git\Project\Project\bin
我想到了一种解决方法,但处理两个不同的代码版本进行开发和部署对我来说似乎是不必要的错误来源。
所以我的问题是如何解决问题。我更喜欢提示如何重新配置Eclipse。
提前致谢 Threx
答案 0 :(得分:0)
有很多方法:
答案 1 :(得分:0)
解决方案在于调整Eclipse的配置。
在Run |下运行配置... | slide参数有条目"工作目录" 。默认情况下,它设置为$ {workspace_loc:ProjectName}。将其更改为$ {workspace_loc:ProjectName / bin}后,java.io.FileNotFoundException-警告消失,一切正常。
现在,Eclipse和Eclipse之外的JRE使用相同的路径,不再需要使用变通方法的冗余代码。