[英]how to load the images in java runnable jar?
當我將項目轉換為runnable jar相同的系統時,圖像將在輸出中加載。 但是當我在另一個系統中嘗試時,圖像無法加載? 如何提供圖片網址,而不是使用c:?請幫忙嗎?
JToolBar toolbar = new JToolBar("Toolbar", JToolBar.HORIZONTAL);
JButton capturebut = new JButton(new ImageIcon("C:\\sampleprojects\\
compare\\shankar\\src\\capture.gif"));
capturebut.setToolTipText("Capture");
toolbar.add(capturebut);
您需要將圖像文件放入JAR文件中,然后使用java.lang.Class
的getResource()
方法獲取引用JAR文件中的文件的URL; 現在你的代碼直接從你的文件系統而不是在JAR文件中加載圖像文件。
傳遞給getResource()
的字符串取決於您將其放在JAR文件中的位置。 如果這樣做的類是com.acme.bar
包中的類Foo
,你可以將capture.gif
放在JAR文件的同一個com\\acme\\bar\\
subdir中(與Foo
類在同一個目錄中),並且
JButton capturebut = new JButton(new ImageIcon(Foo.class.getResource("capture.gif")));
這是因為在具有相對名稱(不以/
開頭getResource()
的類上調用getResource()
將在與該類的類文件所在的目錄相同的目錄下查找資源。
另一方面,您可以在JAR文件的根目錄下創建resources\\images
子目錄,而不是"capture.gif"
使用"/resources/images/capture.gif"
。 使用'/'開始名稱使其從JAR文件的根開始搜索,而不是相對於類文件的位置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.