Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 管理打包为jar的资源_Java_Eclipse_File_Io_Resources - Fatal编程技术网

Java 管理打包为jar的资源

Java 管理打包为jar的资源,java,eclipse,file,io,resources,Java,Eclipse,File,Io,Resources,我当前正在从eclipse中声明为源文件夹的资源文件夹中读取文件 BufferedImage bufferedImage = ImageIO.read(Loader.class.getResource("/textures/" + fileName)); 及 如果我想将我的资源打包到jar中,这是很好的。但是如果我也想写文件,那就不行了 我可以将它们放在我的构建路径之外访问它们,这在eclipse中是可以的,但在我的jar中使用它时非常难看。因为我认为没有办法写入JAR文件(至少没有“干净”的

我当前正在从eclipse中声明为源文件夹的资源文件夹中读取文件

BufferedImage bufferedImage = ImageIO.read(Loader.class.getResource("/textures/" + fileName));

如果我想将我的资源打包到jar中,这是很好的。但是如果我也想写文件,那就不行了

我可以将它们放在我的构建路径之外访问它们,这在eclipse中是可以的,但在我的jar中使用它时非常难看。因为我认为没有办法写入JAR文件(至少没有“干净”的JAR文件),所以我必须将我的资源放在外部


我如何读写文本文件和图像文件,同时保持在IDE和JAR中工作的文件夹结构(在子文件夹中对资产进行排序)?

你能使用maven吗?如果是,只需将资源放在src/main/resources下,所有文件夹内容都将放在jar根文件夹中,这与将我的资源放在文件夹中并在eclipse中将其声明为源文件夹的结果相同。在我的IDE之外,我仍然无法向它们写入数据。使用maven,您将在使用maven命令行的IDE之外获得相同的结果,也许我不理解你的问题,如果这不是我想要在编译和打包成jar文件后写入文件的情况,但我也希望它们位于我的资源的默认位置,以便我可以加载它们。
BufferedReader reader = new BufferedReader(new InputStreamReader(OBJFileLoader.class.getResourceAsStream("/objs/" + objFileName + ".obj")));