0

我正在设置一个项目,该项目需要几个随应用程序一起提供的非 java 资源,我在项目根目录中创建了一个目录结构。

src/                           - Java packages and classes
resource/media/icons/          - Button, form and table icons
resource/media/images/         - Report and application images
resource/media/reports/        - Jasper report templates
resource/help/                 - Help documentation

我通过将资源目录添加为源文件夹将其添加到类路径中,这是正确的方法吗?

当我导出项目时,资源是否也会导出?

我应该如何访问这些文件,访问 resource/media/reports/ 目录中的 ShippintTimes 报告模板的 URL 是什么?

// Current example accessing a report
String reportUrl = "resource/media/reports/ShippintTimes.jasper"

我需要做些什么来使 URL 操作系统独立吗?

关于放置非 java 应用程序资源的位置是否有任何约定?

我知道有几个问题,关于我应该如何构建我的项目报告的任何提示帮助或示例将不胜感激。

4

1 回答 1

0

只要您的资源文件夹位于类路径中,您就可以通过以下方式引用项目中的资源:

getClass().getResourceAsStream("path");

请注意,这里的绝对路径没有 / 开头,而相对路径以 / 开头
请参阅:File loading by getClass().getResource()

于 2018-11-30T06:45:15.777 回答