当前位置: 首页 > 知识库问答 >
问题:

如何在IntelliJ IDEA中的一个JAR工件中正确地包含一个资源文件夹?

沃侯林
2023-03-14

我有一个项目,从一个标签为RES的文件夹中读取图形和音效。此文件夹与src文件夹处于同一目录级别。我已将res标记为资源根。

我通过Project Structure->Artifacts->Add(Alt+Insert)->JAR将工件配置为包含res作为内容目录

public static final Sfx VOID_SOUND = new Sfx(TinySound.loadSound(new File("res/audio/sfx/void_sound.wav")));
/home/user/Demo/res/audio/sfx/void_sound.wav (No such file or directory)
Error getting resource stream!

是否有一种方法可以将工件构建配置到合适的位置?我希望在jar文件中包含资源,这样它就可以作为一个独立的jar,没有外部依赖关系。

共有1个答案

季凡
2023-03-14

我对Linux不熟悉,所以请对此持半信半疑的态度。但在我看来,它似乎试图从它没有权限的地方访问文件。是否尝试将文件或目录移动到任何用户都可以访问的共享位置?

 类似资料:
  • 问题内容: JavaScript中是否有类似于CSS的东西,允许您在另一个JavaScript文件中包含一个JavaScript文件? 问题答案: JavaScript的旧版本没有导入,包含或要求,因此已经开发了许多解决此问题的方法。 但是自2015年(ES6)起,JavaScript有了ES6模块标准即可在Node.js中导入模块,大多数现代浏览器也支持该模块。 为了与旧浏览器的兼容性,这样的构

  • 问题内容: 我知道还有其他针对同一问题的问题,但问题是解决方案对我不起作用。我有一个小工具,它应该读取我想拥有的文件并将其打包为资源,并依赖于其他我希望将其作为jar而不是单个类的项目(我正在使用Eclipse Helios)。 作为Eclipse中的应用程序,我可以通过以下方式访问资源 当且仅当将资源文件夹放置在输出路径(已编译的源)下时,并且如果将其放置在src文件夹中时,则不是这样。 当我打

  • 我需要创建一个应用程序,使用各种参数,如高度,体积或基础面积排序各种类型的多边形。将通过命令行传递具有多边形参数、排序类型参数、排序方法参数的文件名的参数。该文件位于项目中的“我的资源”文件夹中的“我的src”文件夹之外。我已经实现了所有的程序,当我通过eclipse运行配置使用pass参数运行时,它工作得很好。但是当我尝试使用cmd相同的参数运行我的.jar文件时,它给出了。 我使用打开了我的j

  • 问题内容: 我正在使用cx_freeze部署我的应用程序。我想包含整个目录,因为包含单个文件不会将它们放在文件夹中。如何包含文件夹? 问题答案: 您必须为构建选项设置一个include files参数。您可以通过不同的方式执行此操作,但是我将展示部分配置。我在这里描述的是针对一个特定的文件和一个特定的目的地。我认为您也可以设置这样的路径,但是我尚未对此进行测试。 编辑: 对此进行了测试,因此请为您

  • 问题内容: 我写了一个Java程序,它实际上是现有命令行程序的gui。所以基本上我的程序就是。因此,我已经使用Eclipse IDE将java源文件导出为可执行jar文件,并且效果很好,但是我确实需要将此myprogram.exe包含在生成的jar文件的目录中才能正常工作。 现在,我正在寻找一种在jar文件中包含myprogram.exe的方法,以便可以将其捆绑为一个文件,因此首选使用Eclips

  • 我有一个资源文件夹/包在我的项目的根,我“不”想加载某个文件。如果我想加载某个文件,我会使用class.getResourceStream,我会很好!!我实际上想要做的是在资源文件夹中加载一个“文件夹”,循环该文件夹中的文件,并获得每个文件的流并读取内容...假设在运行时之前未确定文件名...我该怎么办?有没有一种方法可以在你的jar文件中得到一个文件夹中的文件列表?请注意,包含资源的Jar文件与