簡體   English   中英

訪問.jar文件中的報告

[英]Accessing report inside a .jar file

各位,正如標題所暗示的。 當我清理程序並將其構建為要部署的jar文件時,無法訪問報告。 我嘗試在互聯網上瀏覽以尋求可能的解決方案,但是沒有一個能解決問題。 所以下面是我嘗試訪問jar文件中的報告的操作:

URL reportURL = getClass().getClassLoader().getResource("assessmentrecordsystem\\reports\\report1.jrxml");//returns nothing

reportInputStream = this.getClass().getClassLoader().getResourceAsStream("\\reports\\report1.jrxml");//all so returns nothing

我錯過了什么??

這是我的jar文件包含的內容:

在此處輸入圖片說明

考慮這樣的結構:

myjar.jar
  |__ assessmentrecordsystem
        |__ MyClass.class
        |__ reports
              |__ report1.jrxml

您可以使用getResourceAsStream()從MyClass加載具有相對路徑的資源。

InputStream is = MyClass.class.getResourceAsStream("reports/report1.jrxml");

否則,您需要將以下條目添加到jar內的/META-INF/MANIFEST.MF文件中:

Class-Path: .

然后,您可以使用getClassLoader()。getResourceAsStream()從jar根目錄加載具有絕對路徑的文件

InputStream is = MyClass.class.getClassLoader().getResourceAsStream(
        "/assessmentrecordsystem/reports/report1.jrxml");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM