为什么80%的码农都做不了架构师?>>>   

当你把一个java写的程序打包为jar的时候,请务必注意你读取资源文件的方式。

一般我们为了方便读取资源文件,在一个类中定义一个基本路径

base_path=ClassName.class.getResource("/").getPath();

变量,在其他的类中想读取资源文件的时候,直接用这个变量加上资源的相对路径,这样当 然在ide里面运行是没有任何问题的,但是一旦打包成jar后就无法运行,原因是无法读取资源文件,因为jar的url的规则是这样的:file:/C: /fat.jar!images/img.jpg是这样的,这个和File的路径规则不一样,所以我们new 一个File当然不会成功了哦,在网上找了许久也没找到什么好点的办法,唯一知道的就是

ClassName.class .getResourceAsStream("/images/trayIcon.jpg")这样具体到某一个文件上去,得到一个流。那么这样在jar中是没任何问题的。

这个问题困扰了我很久,以前也遇到过,昨晚又遇到了,终于找到原因所在了,杯具++啊

大牛们看到了,千万别笑话我,如果有更好的办法请告知小弟,万分感谢!

发觉java真的不适合开发桌面应用程序啊。

转载于:https://my.oschina.net/lazyp/blog/86986

读取jar中资源文件的问题相关推荐

  1. java resources 路径_Java工程读取resources中资源文件路径问题

    正常在Java工程中读取某路径下的文件时,可以采用绝对路径和相对路径,绝对路径没什么好说的,相对路径,即相对于当前类的路径.在本地工程和服务器中读取文件的方式有所不同,以下图配置文件为例. 本地读取资 ...

  2. java 如何读取jar包内资源文件_【解惑】深入jar包:从jar包中读取资源文件

    我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...

  3. [转]VB中资源文件.res的使用方法详解

    在几乎所有的Windows应用程序中都拥有资源文件,这些文件定义使用应用程序将要显示很多的用户界面元素,以及提供程序所需要的各种类型数据的存储场所.资源文件在VC应用程序中应用十分广泛,在VB应用中却 ...

  4. Java中资源文件获取源码浅析

    Java中资源文件获取源码浅析 文章目录 Java中资源文件获取源码浅析 JDK11 Class.getResource(String) Class.getClassLoader().getResou ...

  5. Delphi中资源文件使用详解(转载)

    Delphi 中资源文件使用详解 原文出处:http://blog.51cto.com/ 一.编写 RC 脚本文本 用记事本或其它文本编辑器编写一个扩展名为 ".rc" 的文件.格 ...

  6. Delphi中资源文件使用详解

    Delphi中资源文件使用详解<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" ...

  7. Delphi 中资源文件使用详解

    Delphi 中资源文件使用详解 第一篇文章: <Dephi5中资源文件的创建和使用> 几乎每个Windows应用程序都使用图标.图片.光标等资源.资源是程序的一部分,但是它是不可执行代码 ...

  8. Delphi编程中资源文件的应用

    Delphi编程中资源文件的应用 2008-02-03 14:08Dephi中资源文件的应用 /转自 http://chamlly.spaces.live.com/blog/cns!548f73d87 ...

  9. Java项目中资源文件查找问题

    1. 问题的提出 在学习JDBC连接时,希望采用配置文件存储信息,并在代码中读取配置文件的方式来进行驱动的注册和连接的建立.所以采用以下代码 public void connection(){try{ ...

  10. 读取jar包资源代码赏析

    2019独角兽企业重金招聘Python工程师标准>>> 该代码来自jfinal engine.读取jar包内代码通常通过classLoader获取 // // Source code ...

最新文章

  1. react-native(五)生成App
  2. Valgrind 使用简单说明
  3. 计算机组装维修中级试题,计算机维修工中级理论知识试卷.doc
  4. 什么是SFP光模块?光模块知识介绍!
  5. php class使用方法,php的类使用方法问题
  6. JavaWeb调用python脚本(可传参)
  7. 手把手带你写Node.JS版本小游戏
  8. 微博持续开展不友善言论治理专项 重点整治网络暴力行为
  9. 网络 传输层 | UDP协议与TCP协议详解(三次握手及四次挥手、滑动窗口、拥塞控制)
  10. 力扣 每日一题 丢失的数字
  11. Spring 注解 @Controller,@Service,@Repository,@Component,重定向 与 服务端跳转
  12. <<游戏设计艺术>>笔记
  13. matlab制作数字滤波器(带通滤波器)
  14. python oserror 22_Python3 (Win10) 打开文件报错OSError: [Errno 22]
  15. Python就业指导
  16. 数组之concat注意事项-不更改原数组
  17. Python-有趣的freegames
  18. 也说说互联网产品开发中的设计
  19. Intel和AMD处理器各有什么特点?该如何选择?
  20. git 远程仓库时报错SSL certificate problem: unable to get local issuer certificate(git版本与Let‘s Encrypt的证书导致)

热门文章

  1. linux librtmp 编译,在linux系统下安装python librtmp包的实现方法
  2. python设置执行服务环境变量_Python执行.sh脚本cataline环境变量配置
  3. 基于 EntityFramework、Autofac 的 UnitOfWork 框架(一)
  4. Mysql 8.0 | #08004Client does not support authentication protocol requested by server
  5. CentOS6 x86_64最小化安装优化脚本
  6. swift基础知识一
  7. DiscuzX模板制作-主题列表页_左边栏制作_V1
  8. jsp自定义标签库打包步骤
  9. C# windows服务程序中的Timer控件的问题
  10. 【Docker】总集篇