对我来说很好。检查你可能有什么不同。
实施例1:(资源在 SRC)
档案结构
码
package com.stackoverflow.test;import java.net.URL;import javax.swing.*; // Wild carded for brevity. // Actual pre imports single classespublic class Main { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable(){ public void run() { URL url = Main.class.getResource( "/resources/stackoverflow.png"); ImageIcon icon = new ImageIcon(url); Jframe frame = new Jframe(); frame.add(new JLabel(icon)); frame.pack(); frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.setVisible(true); } }); }}
- [右键单击项目]→[导出]→[可运行的Jar文件]→[设置启动配置]
利润
仅供参考,相同的设置也可以在Eclipse中运行
示例2 :(资源不在 src中-而是在项目中)
脚步:
文件结构(通知资源看起来像一个普通文件夹)
我们现在要做的就是将资源放在构建路径上。这是将所有内容放入类路径中的文件夹(不包括文件夹本身)中
右键单击该项目,然后转到[构建路径]→[配置构建路径]
从对话框的[源]选项卡中,选择[添加文件夹],然后在新对话框中,选择[资源]文件夹
现在资源文件夹的内容在构建路径中(注意现在文件夹中的小包
新代码不再使用资源前缀作为路径
URL url = Main.class.getResource("/stackoverflow.png");
从上面与第3步和第4步相同,并获利!
更新
设置启动配置
通常,一旦你运行了该类(即右键单击该类并以Java应用程序身份运行),便会设置运行配置。你需要将其设置为清单中的启动点。但是,这是手动 *** 作的方法。
脚步:
[右键单击项目]→[属性]→[运行/调试设置]
你可以看到我已经有了一个运行配置(从简单运行该类隐式设置)。但是要创建一个新的,请选择[New]→[Java Application]为运行配置创建一个名称,然后浏览或键入一个主启动类。以我
com.stackoverflow.test.Main
为例- 现在,如上例所示导出时,选择运行配置
- 像上面一样运行jar。
编辑
检查结果
表现:
Manifest-Version: 1.0Rsrc-Class-Path: ./Class-Path: .Rsrc-Main-Class: com.stackoverflow.test.MainMain-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)