如何在Java中定义文件路径,以便为生产阶段做好准备



我正在用netbeans IDE编写java程序,该程序接收jasper报告*。JRXML,然后为用户显示报告。我为文件路径

编写了以下代码行
String reportSource = "src\jasper-reports\report.jrxml";  

但是当我移动dist文件夹在其他地方,并试图运行其中的jar文件,我的程序找不到报告。

我的问题是我应该把*放在哪里?jrxml文件以及如何在我的程序中定义它的路径,以便当我想把我的软件给别人时,它运行时没有任何错误(例如程序可以找到文件)

避免使用绝对路径。尝试将该文件作为资源包含在netbeans项目中。然后在代码中搜索并加载

文件
new InputStreamReader((Main.class.getResourceAsStream("/report.jrxml")))

之类的取决于文件在项目中的位置

更推荐使用以下两种方法之一:

  1. 在Java应用程序启动器命令行中将位置/路径作为-D属性=值传递http://www.tutorialspoint.com/unix_commands/java.htm

  2. 将其位置/路径存储在配置文件中,并使用唯一的密钥对文件进行相应的编辑,以适应不同的环境。例如:这个文件总是保存在${HOME}/config_files/目录

绝对路径被认为是不好的做法

相关内容

  • 没有找到相关文章

最新更新