我目前正在为PC编写一个Java游戏,我有一个关于资源(图像、声音、数据等)的问题。应该被找到。对于大多数PC游戏,游戏的主目录如下所示:
GameName
├─ Resource Directory
│ └── ...
├─ More Resources
│ └── ...
.
.
└── GameName.exe资源被组织成不同的目录,游戏的主.exe文件,可能还有其他几个文件,在游戏的主目录中。但是,在我的Intellij项目中,我已经将我的所有资源都放在了项目的resources目录中。我的理解是,当我将游戏构建为.jar文件时,resources目录中的所有资源也将打包到.jar文件中。
那么,我为什么要将我的所有资源分离到游戏主目录中的不同子目录中,而不是简单地将它们保存在游戏的.jar文件中呢?如果是这样,如何防止Intellij将所有资源打包到.jar中?
发布于 2017-03-26 21:54:53
人们把它分开,主要是因为它更容易更新。如果您有您的Jar中的所有内容,这将是一个大文件,您必须替换每次您想更新一个资源。但是如果你单独存储你的资产,你的发射器只能更新所需的文件,而不需要接触游戏。
你不能让IntelliJ停止把它们放在你的罐子里。你不能再把它们放进去了。不要将资源放在Jar中,而是放在单独的目录中,而不是getClass().getResource(),而是使用File对象并打开它。在使用该文件之前,必须确保该文件的存在。
https://stackoverflow.com/questions/43034959
复制相似问题