我有一个jar
包含要分发的资源(主要是缓存,日志记录等的配置)的文件。
我对这些资源的相对路径有疑问,所以我做了在另一个stackoverflow问题中发现的问题,该问题说这是有效的方法:
ClassInTheSamePackageOfTheResource.class.getResourceAsStream('resource.xml');
不幸的是,这不起作用。
有任何想法吗?谢谢!
PS:显然我不能使用绝对路径,如果可能,我想避免使用环境变量
确保资源文件夹在项目设置中列为源文件夹。另外,确保在构建jar时将资源文件夹设置为导出。
您可以将.zip扩展名添加到jar文件中,然后将其打开以确保包含资源并位于预期位置。
我总是这样使用绝对路径:
InputStream input = this.getClass().getResourceAsStream("/image.gif");
使用绝对路径时,“ /”是jar文件中的根文件夹,而不是主机的根文件夹。
问题内容: 我有一个带有工具栏的Java项目,该工具栏上带有图标。这些图标存储在名为resources /的文件夹中,因此路径可能是“ resources / icon1.png”。该文件夹位于我的src目录中,因此在编译后,该文件夹将被复制到bin / 我正在使用以下代码访问资源。 (imageName将为“ resources / icon1.png”等)。在Eclipse中运行时,效果很好。
问题内容: 嗨,我已经将我的Java项目导出为可执行jar文件。在我的项目中,我正在访问包含一些数据的Excel文件。现在,当我尝试访问Excel文件时,我将无法访问它。 我的项目结构是: Java_Project_Folder -src_Folder -resources_Folder(包含Excel文件) 我正在像访问Excel文件 我尝试使用以下方式访问此文件: 但是我进入的是空异常。有什么
但我进的是空异常。有什么问题,有人能帮忙吗?
什么是ClassPath 简单说来ClassPath就是查找class文件的路径,在Tomcat等容器下,ClassPath一般是WEB-INF/classes,在普通java程序中,我们可以通过定义-cp或者-classpath参数来定义查找class文件的路径,这些路径就是ClassPath。 为了项目方便,我们定义的配置文件肯定不能使用绝对路径,所以需要使用相对路径,这时候最好的办法就是把配
XMLFileValidator类 主类
ServletContext接口定义了三个方法来访问当前Web应用程序的资源文件,这三个方法如下: l getResourcePaths方法 该方法返回指定Web应用程序目录中的所有子目录和文件,这些返回的目录文件不包括嵌套目录和文件。这些返回的子目录和文件都封装在该方法返回的一个Set对象中。getResourcePaths方法的定义如下: public Set getResourcePaths