Git Product home page Git Product logo

ms079's Introduction

ms079

冒险岛 v079 版本,是大巨变前最经典的版本。


一、环境准备

所有环境,必须安装数据库:

  • MySQL 5.7.30+ (提取码:6ifn)
    • 注意,原版本在 MySQL 4.x 环境下运行,我自己的服务器,使用阿里云的 5.7.32-log 版本,可以正常运行

1.1 开发环境

  • JDK 1.8:注意,原版本仅在 Java7 JRE 环境运行,迁移到 Java8 将存在 js 脚本导入的问题,待未来修复此兼容性问题
  • IntelliJ IDEA:推荐使用的开发工具

启动入口是 server.Startmain 方法。

1.2 运行环境

必须安装 JDK 1.8 运行环境。

必须设置 JAVA_HOME 环境变量。

Linux 服务器参考 启动服务器-命令行.bat 逐一执行命令即可启动,有时间我再翻译为 .sh 脚本。

Windows 系统或服务器,启动脚本二选其一。

二、如何编译?

通常使用 IDEA 工具或 Maven 插件进行编译操作。

更新:目前已加入 assembly 编译插件,可以同时打包 wz脚本 以及其他资源到 ms079-[version]-dist.zip 压缩文件中。

提示:此压缩文件可以作为发布包使用,只需要解压出来,安装运行环境,以及初始化数据库,然后运行即可。

2.1 IDEA 工具

以下方式任选其一:

  1. 不想使用 Maven 的话,参考 Build Artifacts 教程,它可以将所有依赖库添加到 jar 包中,因此可以通过 java -jar xxxx.jar 方式直接运行
  2. 点击工具上方的 Build 菜单,生成编译文件
  3. 使用 Ctrl + F9 快捷键,执行 Build 命令,生成编译文件
  4. 展开工具右侧栏 Maven 菜单中的 Lifecycle 选项,双击 compile 命令,生成编译文件

需要打包为 ms079-[version].jar 的话,在第四种方式中,替换 compilepackage 即可。

2.2 Maven 插件

在项目根目录下打开 CMD 工具(需要安装 Maven 插件):

  • 编译命令:mvn clean compile
  • 打包命令:mvn clean package

注意,Maven 命令也可以从 IDEA 中运行,使用 Alt + F12 快捷键(内置 Maven 插件)即可。

三、初始化数据库

IDEA 社区版不支持数据库操作。

IDEA 旗舰版可以连接数据库,然后找到 db/ms079.sql 文件,右键运行。记得先连接数据库,选好默认的 schema 实例。

另外,还可以下载 Navicat Permium 15 工具(提取码:j6lt),来执行操作:

  1. 连接本地 MySQL 数据库
  2. 创建名为 ms079 的数据库实例,编码为 utf-8
  3. 在数据库上右键,选择 Execute SQL File...
  4. 找到 db/ms079.sql 文件,点击开始执行

四、如何运行?

运行分两步:首先启动服务端,然后安装客户端进行登录。

4.1 启动服务端

前提是 JAVA_HOME 环境变量正常,以及数据库初始化完毕。

  1. 打包(已有 ms079-[version]-dist.zip 文件,可忽略此步骤)
    • 展开 IDEA 右侧栏 Maven 菜单中的 Lifecycle 选项
    • 双击 clean 清理旧文件
    • 双击 package 进行打包
    • 确定已生成 /target/ms079-[version]-dist.zip 文件
    • 【可选】或者通过 Maven 插件,在根目录下使用 mvn clean package 命令进行打包
  2. 解压 zip 文件到某一个文件夹
  3. 进入文件夹,修改 服务端配置.ini 配置文件中的参数(主要是数据库的账号密码)
  4. 打开 启动服务端-GUI.bat,点击【启动服务端】按钮
  5. 【可选】或打开 启动服务端-命令行.bat
  6. 等待显示【启动成功,可以进入游戏】类似的信息即可

注意,js 文件的提示是由于 Java8 不兼容的问题,如需修复,可以选择使用 JDK 1.7_80 来编译打包和运行。

提示:ms079-[version]-dist.tar.gz 文件是 Linux 服务器的压缩文件,目前没有经过 Linux 服务器的测试。

4.2 客户端登录

  1. 安装 冒险岛v079客户端
  2. 删除客户端中的 HShield 目录,下载 079 私服过 HS 文件 (提取码:7i0u)进行替换
  3. 拷贝 V079登录器.bat 到客户端下,双击运行
    • 如需联网:请编辑 服务端配置.iniV079登录器.bat 中的相关 IP 地址和端口
    • 简单起见:仅将所有的 127.0.0.1 修改为服务器 IP 地址,端口保持原样
    • 云服务器还需要在安全组中,打开对应的端口授权,切记切记

声明

仅供个人学习交流使用,不得用于任何商业途径,请在下载 24 小时后删除。

ms079's People

Contributors

mrzhqiang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ms079's Issues

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/mina/core/service/IoHandlerAdapter

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/mina/core/service/IoHandlerAdapter
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at server.Start.startServer(Start.java:234)
at gui.ZlhssMS.jButton10ActionPerformed(ZlhssMS.java:774)
at gui.ZlhssMS.access$000(ZlhssMS.java:40)
at gui.ZlhssMS$1.actionPerformed(ZlhssMS.java:134)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.mina.core.service.IoHandlerAdapter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 52 more

[BUG] SQL执行异常

Describe the bug

public static Connection getConnection() { try { //TODO 每一次获取都会有一个新的数据库连接不会被关闭,只能通过mysql配置超时进行关闭。。。 // ebean中的Connection是有事务的需要进行提交 否则会事务超时 Connection connection = DB.getDefault().dataSource().getConnection(); connection.setAutoCommit(true); return connection; } catch (SQLException e) { LOGGER.error("获取数据库连接出错", e); throw new DatabaseException(e); } }

[BUG]编译时报错

Describe the bug

1649298585(1)
在项目根节点调用mvn clean compile时编译报错

(Optional) About information

(【可选的】相关信息)

  • OS version: Windows 10 10.0
  • Branchs Tags or Commit Revision:
  • Your customize: 大佬能教教linux搭环境吗

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

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

执行MapleStoryApplication的main法和打包后执行 启动服务端-GUI.bat报同一个错[BUG]

Exception in thread "main" com.google.inject.ConfigurationException: Guice configuration errors:

  1. [Guice/MissingConstructor]: No injectable constructor for type LoginServer.

class LoginServer does not have a @Inject annotated constructor or a no-arg constructor.

Requested by:
1 : LoginServer.class(LoginServer.java:30)
at CharLoginHandler.(CharLoginHandler.java:42)
_ for 2nd parameter
at handling.MapleServerHandler.(MapleServerHandler.java:97)
_ for 1st parameter
at CashShopServer.(CashShopServer.java:35)
_ for 3rd parameter
at ApplicationStarter.(ApplicationStarter.java:65)
_ for 5th parameter
at MapleStoryApplication.(MapleStoryApplication.java:29)
_ for 1st parameter
while locating MapleStoryApplication
2 : LoginServer.class(LoginServer.java:30)
at CharLoginHandler.(CharLoginHandler.java:42)
_ for 2nd parameter
at handling.MapleServerHandler.(MapleServerHandler.java:97)
_ for 1st parameter
at AuthenticationServer.(AuthenticationServer.java:42)
_ for 2nd parameter
at ApplicationStarter.(ApplicationStarter.java:65)
_ for 6th parameter
at MapleStoryApplication.(MapleStoryApplication.java:29)
_ for 1st parameter
while locating MapleStoryApplication
3 : LoginServer.class(LoginServer.java:30)
at server.ShutdownServer.(ShutdownServer.java:28)
_ for 1st parameter
at ApplicationStarter.(ApplicationStarter.java:65)
_ for 7th parameter
at MapleStoryApplication.(MapleStoryApplication.java:29)
_ for 1st parameter
while locating MapleStoryApplication

[BUG]编译报错,求救

我环境是JDK 1.8.0_301,maven版本3.1.0,开发工具idea,mvn clean install时一直报这个

Exception in thread "main" java.lang.IllegalAccessError: tried to access class org.apache.maven.project.DefaultModelBuildingListener from class io.repaint.maven.tiles.TilesMavenLifecycleParticipant
at io.repaint.maven.tiles.TilesMavenLifecycleParticipant.thunkModelBuilder(TilesMavenLifecycleParticipant.groovy:389)
at io.repaint.maven.tiles.TilesMavenLifecycleParticipant.orchestrateMerge(TilesMavenLifecycleParticipant.groovy:379)
at io.repaint.maven.tiles.TilesMavenLifecycleParticipant.afterProjectsRead(TilesMavenLifecycleParticipant.groovy:322)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:272)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:153)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:414)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:357)

[BUG]运行客户端游戏在登录界面锁表了

服务端生成成功,也执行成功,运行着;
但是在运行客户端之后,在登录界面输入账号密码,提示了Lock wait timeout exceeded; try restarting transaction
登录验证的sql语句 在Mysql系统表中都被锁了,点击人物 也提示连接服务器失败,麻烦看到了 解答下

[BUG]BaseWzElement中,children 属性作为一个map对象,使用了xml中节点的name作为key,但是部分节点中有多个名称相同的节点,导致wzData.load(),初始化子节点时错误

Describe the bug

(简洁清楚地描述 BUG 是什么)

  • 发现异常的【堆栈日志】
    ava.lang.IllegalStateException: Duplicate key com.github.mrzhqiang.maplestory.wz.element.VectorElement@6440112d

    at java.util.stream.Collectors.lambda$throwingMerger$0(Collectors.java:133)
    at java.util.HashMap.merge(HashMap.java:1254)
    at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1320)
    at java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.childrenOf(BaseWzElement.java:149)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.(BaseWzElement.java:61)
    at com.github.mrzhqiang.maplestory.wz.element.ExtendedElement.(ExtendedElement.java:19)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.convertChildren(ImgdirElement.java:70)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.childrenOf(BaseWzElement.java:149)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.(BaseWzElement.java:61)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.(ImgdirElement.java:43)
    at com.github.mrzhqiang.maplestory.wz.element.CanvasElement.convertChildren(CanvasElement.java:40)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.childrenOf(BaseWzElement.java:149)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.(BaseWzElement.java:61)
    at com.github.mrzhqiang.maplestory.wz.element.CanvasElement.(CanvasElement.java:24)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.convertChildren(ImgdirElement.java:58)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.childrenOf(BaseWzElement.java:149)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.(BaseWzElement.java:61)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.(ImgdirElement.java:43)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.convertChildren(ImgdirElement.java:50)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.childrenOf(BaseWzElement.java:149)
    at com.github.mrzhqiang.maplestory.wz.element.BaseWzElement.(BaseWzElement.java:61)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.(ImgdirElement.java:39)
    at com.github.mrzhqiang.maplestory.wz.element.ImgdirElement.of(ImgdirElement.java:35)
    at com.github.mrzhqiang.maplestory.wz.WzFile.(WzFile.java:80)
    at com.github.mrzhqiang.maplestory.wz.WzDirectory.attemptParse(WzDirectory.java:132)
    at java.util.Iterator.forEachRemaining(Iterator.java:116)
    at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
    at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
    at com.github.mrzhqiang.maplestory.wz.WzDirectory.parse(WzDirectory.java:117)
    at com.github.mrzhqiang.maplestory.wz.WzDirectory.attemptParse(WzDirectory.java:128)
    at java.util.Iterator.forEachRemaining(Iterator.java:116)
    at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
    at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
    at com.github.mrzhqiang.maplestory.wz.WzDirectory.parse(WzDirectory.java:117)
    at com.github.mrzhqiang.maplestory.wz.WzData.load(WzData.java:46)

  • 出现问题的【屏幕截图】

  • 可以复现的【详细步骤】

  • 你所猜测的【关键因素】

  • 其他相关的【文字描述】

Expected behavior

(简洁清楚地描述期望的行为)

  1. 正常情况下,应该/不应该 发生的行为
  2. 特殊情况下,应该/不应该 发生的行为

(Optional) About information

(【可选的】相关信息)

  • OS version: Windows 10 10.0
  • Java: Oracle JDK 1.8.0_301
  • DB: MySQL 5.7.30-log
  • Branchs Tags or Commit Revision:
    • main
    • develop
    • release-[x.x]
    • tag 1.0
    • revision 1398406
  • Project version: 1.0-SNAPSHOT
  • Your customize: other information

客户端启动不了,报errcode-21XXXXXXX

用bat启动不了,报错如下
No suitable driver found for jdbc:mysql://localhost:3307/ms?characterEncoding=UTF-8&autoReconnect=true

很奇怪,我看maven里也有了,应该不需要单独指定jdbc了

自己用debug模式能成功启动服务器
现在卡在客户端进不去了

java.sql.SQLException: Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY.

........
[自动存档] 已经将 0 个玩家保存到数据中.
服务端启用在线时间记录.1分钟自动记录一次
SpeedRunner错误:java.sql.SQLException: Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY.

经验倍率:2 物品倍率:2 金币倍率2

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

服务端启动完毕 可以进入游戏了:::
java.sql.SQLException: Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY.
java.sql.SQLException: Operation not allowed for a result set of type ResultSet.TYPE_FORWARD_ONLY.

[BUG]MapleItemInformationProvider中 getItemDate,由于wz下子目录资源(files)未加载,导致部分资源访问会提示空指针。目前影响角色创建时,点击确定无法正常进入游戏

Describe the bug
异常描述中,写了个死锁的提示,没细看,可能是之前请求的代码逻辑中有事务未正常提交?

(简洁清楚地描述 BUG 是什么)

  • 发现异常的【堆栈日志】

  • error updating login statecom.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
    java.lang.NullPointerException
    at java.util.Objects.requireNonNull(Objects.java:203)
    at java.util.Optional.(Optional.java:96)
    at java.util.Optional.of(Optional.java:108)
    at java.util.stream.FindOps$FindSink$OfRef.get(FindOps.java:193)
    at java.util.stream.FindOps$FindSink$OfRef.get(FindOps.java:190)
    at java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:464)
    at server.MapleItemInformationProvider.getItemData(MapleItemInformationProvider.java:613)
    at server.MapleItemInformationProvider.getEquipStats(MapleItemInformationProvider.java:839)
    at server.MapleItemInformationProvider.getEquipById(MapleItemInformationProvider.java:1180)
    at server.MapleItemInformationProvider.getEquipById(MapleItemInformationProvider.java:1174)
    at handling.login.handler.CharLoginHandler.CreateChar(CharLoginHandler.java:332)
    at handling.MapleServerHandler.handlePacket(MapleServerHandler.java:496)
    at handling.MapleServerHandler.messageReceived(MapleServerHandler.java:398)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:854)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
    at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:405)
    at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:235)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
    at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
    at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:535)
    at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:714)
    at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:668)
    at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:657)
    at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:67)
    at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1121)
    at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:750)

  • 出现问题的【屏幕截图】

  • 可以复现的【详细步骤】

  • 你所猜测的【关键因素】

  • 其他相关的【文字描述】

Expected behavior

(简洁清楚地描述期望的行为)

  1. 正常情况下,应该/不应该 发生的行为
  2. 特殊情况下,应该/不应该 发生的行为

(Optional) About information

(【可选的】相关信息)

  • OS version: Windows 10 10.0
  • Java: Oracle JDK 1.8.0_301
  • DB: MySQL 5.7.30-log
  • Branchs Tags or Commit Revision:
    • main
    • develop
    • release-[x.x]
    • tag 1.0
    • revision 1398406
  • Project version: 1.0-SNAPSHOT
  • Your customize: other information

[BUG]缺少依赖,求救

缺少这个依赖2021.1.3版本的,公共仓库里只有2019版本的

<dependency> <groupId>com.github.mrzhqiang.helper</groupId> <artifactId>helper</artifactId> <version>${helper.version}</version> </dependency>

你好 可以留个联系方式吗 有关于客户端和服务端怎么调试的问题想咨询下

Describe the bug

(简洁清楚地描述 BUG 是什么)

  • 发现异常的【堆栈日志】
  • 出现问题的【屏幕截图】
  • 可以复现的【详细步骤】
  • 你所猜测的【关键因素】
  • 其他相关的【文字描述】

Expected behavior

(简洁清楚地描述期望的行为)

  1. 正常情况下,应该/不应该 发生的行为
  2. 特殊情况下,应该/不应该 发生的行为

(Optional) About information

(【可选的】相关信息)

  • OS version: Windows 10 10.0
  • Java: Oracle JDK 1.8.0_301
  • DB: MySQL 5.7.30-log
  • Branchs Tags or Commit Revision:
    • main
    • develop
    • release-[x.x]
    • tag 1.0
    • revision 1398406
  • Project version: 1.0-SNAPSHOT
  • Your customize: other information

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.