龙空技术网

对某一款棋牌类的游戏版本的研究

码农西瓜哥 136

前言:

此时看官们对“java棋牌游戏”都比较着重,朋友们都想要学习一些“java棋牌游戏”的相关文章。那么小编在网摘上汇集了一些关于“java棋牌游戏””的相关知识,希望姐妹们能喜欢,兄弟们一起来了解一下吧!

最近比较闲,正好有一个朋友叫我研究一套棋牌类的代码,本着随手记的原则,把解决问题的过程记录一下,

代码分为服务端跟客户端,我们先来处理服务端

上面是一些需要安装的环境,

随便找一台 LINUX 服务器 安装好宝塔面板

以上圈起来的部分也顺手安装一下

rocketmq4 这个玩意儿 留到最后再处理吧

接下来我们服务端文件弄上去

然后 还原一下数据库

直接上传导入就可以了

然后再修改数据库配置文件

先启动看看 报什么错误

chmod u+x start.sh

./start.sh

提示进程不存在 我们找一下原因吧

原来还是得要安装JAVA的运行环境

安装到/usr/local/java

如图 把 从官方下载的jdk文件上传到 usr/local/java 目录 并解压

然后找到 /etc/profile 文件在 后面增加几条配置文件

点击保存.

使配置文件生效执行命令:source /etc/profile检查是否安装成功

执行命令:java -version

到此 JAVA环境配置成功,我们再进行下一步操作。

然后我们启动一下服务试一下

服务启动失败 得到一堆错误的日志

由于对JAVA不太熟 ,表示有点看不懂

在这里看到一个关键字 redissonConnectionFactory 在想是不是redis 没有配置好呢

在网上查了好多资料,最后确定是redis 的密码不对 重新设置一下

在这里设置好密码后 再看日志文件 提示己经变了

这个提示 是连接不上数据库,这个好办 应该是有数据库没导入。

经过一天的折腾,发现一个问题,

这个文件 是原来生成文件里没有的,是在其它压缩包里找到的 直接COPY过来的,看来里面有一些东西是写死的我怎么改都没有,看来得找到源码自己编译,本想着省事,先把东西跑起来,说干就干,JAVA 的项目,直接先下了一个eclipse,

可是他报一堆错误,别人去这种maven项目不熟悉,后面直接换了个IDEA,能够成功出包

各种自动补全跟加载后,顺利导出JAR 包,就是不知道能不能跑起来,这个后面再看。

我们把编译好的JAR包放到服务器上去跑一下,果然不出所料,报错了,

The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib]

又是一个从来没见过的错误, 又得百度一番 看看解决办法 ,想想这莫不是提示我应该装一个TOMCAT,不管先试一下吧

先装一个TOMCAT吧 centos下安装TOMCAT,网上搜索一下,方法就不多说了,

一顿操作 tomcat启动起来了,我们再来启动一下 账号服务器

发现还是同样的错误 这是为什么了 于是去查找了 代码中的关键字

发现里面一绑定两个 JAR包

tomcat-embed-core-9.0.14.jar

tomcat-embed-el-9.0.14.jar

这两个是 9.0.14 版本的 而 我服务器上装的是 9.0.70版本 是不是这个原因呢

后面感觉不对,会不会是依赖包没呢,我果断检查了旧包里的 jar依赖,发现新包里少了 上面两个 jar包,先放进去试一下吧

然而,丢上去还是报一样的错误,我决定还是用ECLIPSE来出包吧,有可能是新开发工具

需要更多的依赖的原因, 然后我再一次打开了eclipse工程,又一次面对N多的红色错误,

先解决这一堆Maven的依赖错误 查了一堆资料还是没有解决掉,继续分析。

后面我想了想,如果用IDEA能出包我就往这个方向试试,这里简单记录一下 IDEA导出JAR包的过程,

点击项目 找到Open Module Settings

先点 Artifacts 再点 +号 就可以创建导出规则了.

创建成功后 我们点击 Build 下面的 Build Artifacts 就可以导出JAR包

现在重点来了,为什么会报之前的错误,是我们模块导错了,

我们只需要导出 package_hall 模块就行了 不用导出整个

然后我们再放上去 跑一下 结果错误果然不一样了

这次报

creating bean with name 'redissonClient' defined in class path resource [server/qh/dao/config/redis/RedissonAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redissonClient' threw exception; nested exception is org.redisson.client.RedisConnectionException: Unable to connect to Redis server: /127.0.0.1:6379

Redis 连接不上的错误,我们先把redis改一下配置 改好了后我们再重新启动一下,发现报出了新的错误

发现是 rocketmq 环境没有安装 于是立马安排

找到官网

下载二进制文件 上传解压

修改好各种配置后 并开放相应用的端口后

nohup sh ./www/server/rocketmq/bin/mqnamesrv -n 127.0.0.1:9876 &

nohup sh ./www/server/rocketmq/bin/mqbroker -n 127.0.0.1:9876 -c conf/broker.conf autoCreateTopicEnable=true &

执行上面两条命令开启服务

使用jps命令查看broker和nameserver的启动情况

有这两个说明MQ启动完成

到目前为止又发现一个问题

mqbroker -n 启动失败

经排查 发现是 bin 目标下的 runbroker.sh文件需要修改一下启动的内存,因为我的云服务器配置比较低 这里直接改成 256就可以启动了

然后用 jps命令查看一下

两个进程都己经启动我们再回到游戏目录 启动试一下

出现启动完成的提示 我们下一步就可以进行端口连接了

下面我们进行客户端的编译与调试 首先安装 Creator2.2.2

安装完成后 载入工程

然后再点击运行

到此,整个项目就算跑通了,其它的细节有时间再研究一下。

标签: #java棋牌游戏