gradle 当我用嵌入式JRE导出我的Java游戏时,游戏无法从外部文件中读取西里尔字符串

mlnl4t2r  于 5个月前  发布在  Java
关注(0)|答案(1)|浏览(54)

我试图导出我的视频游戏作为可执行文件与嵌入式Java.当我从IDE启动视频游戏(Intellij IDEA)它与外部西里尔文文本文件正常工作.但当我导出它-它不能更多地读取西里尔文数据文件.
我的Gradle构建脚本:

task packageMyApp(type: io.github.fvarrui.javapackager.gradle.PackageTask, dependsOn: build) {        
    mainClass = mainClassName
    bundleJre = true
    generateInstaller = false
    administratorRequired = false
    platform = "windows"        
}

字符串
能有什么不对?我应该手动更改将集成到游戏构建中的JRE吗?我也尝试过使用JPackage。在创建可执行版本后,我遇到了同样的问题。x1c 0d1x

noj0wjuj

noj0wjuj1#

当阅读数据文件时,请确保您指定了读取文件的编码。如果您使用的方法可以接受编码但未指定编码,则直到Java 17为止,将使用系统默认编码,它可以是UTF-8,也可以是其他值。可能的情况是,当通过IDE启动时,系统编码被覆盖为UTF-8它的工作原理是这样的。

相关问题