mrzhqiang / ms079

冒险岛 v079 版本,源码来自网络,本仓库作为研究学习用途。
126 stars 82 forks source link

本地编译打包之后给到linux服务器上,客户端不能进入游戏 #10

Closed jcc563768606 closed 3 years ago

jcc563768606 commented 3 years ago

有一个现象很奇怪,我本地是win10,可以编译可以运行,可以起客户端,进到游戏里面打怪 但是我本地编译打包之后给到linux服务器上,能运行服务端,能进客户端,能选频道,能建角色,但是点开始的时候,直接报一个服务器错误,直接跳回账号登陆界面,服务器日志也显示不全,不知道是哪里有异常

jcc563768606 commented 3 years ago

服务器最后的日志是这样的 Exception javax.script.ScriptException: ReferenceError: "importPackage" is not defined in at line number 1 Error executing script. Path: 脚本/事件/Boats.js Exception javax.script.ScriptException: ReferenceError: "importPackage" is not defined in at line number 5 Error executing script. Path: 脚本/事件/GuildQuest.js Exception javax.script.ScriptException: ReferenceError: "importPackage" is not defined in at line number 5 Error executing script. Path: 脚本/事件/Subway.js Exception javax.script.ScriptException: ReferenceError: "importPackage" is not defined in at line number 1 频道 3: 绑定端口 7577: 服务器IP 127.0.0.1:7577 ====================================================-[ 商城服务器 ] 商城服务器绑定端口: 8600 服务端启用在线统计.60分钟统计一次在线的人数信息. 服务端启用自动存档.30分钟自动存档一次 [自动存档] 已经将 0 个玩家保存到数据中. 服务端启用在线时间记录.1分钟自动记录一次

经验倍率:8 物品倍率:4 金币倍率8

当前开放职业: 冒险家 = true 骑士团 = true 战神 = true

服务端启动完毕 可以进入游戏了::: [DB信息] Could not locate the JDBC mysql driver. [DB信息] Could not locate the JDBC mysql driver.

jcc563768606 commented 3 years ago

这个DB定位不到驱动,应该不是这个问题,我本地也是报这个错,但是能进游戏

jcc563768606 commented 3 years ago

我对比了一下本地和远程的日志 image

感觉是这个选频道的位置有问题,代码在这一行 image 原本逻辑应该是登录完服务器,选了角色之后,登录“频道服务器”,但远程的可以看到又去“登陆了服务器” 还在看原来的逻辑.......

jcc563768606 commented 3 years ago

我试了一下,只有本地电脑可以连接服务器进游戏,用另外一台电脑用ip连接,只能进角色选择,想要进入到游戏主画面就不行了

jcc563768606 commented 3 years ago

是因为我端口没有开全吗,我现在只开放了9595

mrzhqiang commented 3 years ago

联网游戏需要在安全组中,开放所有端口。 配置中的IP地址则全部改成外网地址。 Linux 服务器我没测试过,应该会存在大量的兼容问题。 我还在重构代码,看到不兼容的地方会全部改成兼容代码。

这主要是原版本的代码水平参差不齐,没有使用 Java 兼容性代码在 Linux 服务器上跑。

jcc563768606 commented 3 years ago

嗯?java还有兼容性的问题么,JVM不是号称一次编译,各处运行么,我也没有听说linux和win和mac之间有什么兼容的问题需要解决的

mrzhqiang commented 3 years ago

换行符