在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:fishing-hunter开源软件地址:https://gitee.com/wgslucky/fishing-hunter开源软件介绍:fishing-hunter介绍一款小捕鱼游戏,休闲娱乐一下。主要用于技术学习与实践,本项目是基于<心悦游戏开发框架>开发,地址:https://gitee.com/wgslucky/xinyue-game-frame 是对心悦游戏框架的一次实际应用练习。 版本信息
游戏框架源码项目安装
项目介绍
游戏示例项目源码项目安装
项目介绍
项目依赖关系游戏示例项目会依赖于游戏框架项目,因为框架项目没有上传到公共的maven仓库,所以如果直接编译游戏示例项目,是编译不通过的,因为它会找不到依赖的游戏框架的jar包。所以在编译游戏示例项目之前,需要先编译游戏架构项目。编译步骤就是上面所说的
客户端源码https://gitee.com/wgslucky/xinyue-fish Nacos服务安装
sh startup.sh -m standalone 输出以下信息,表示启动成功: nacos is starting with standalonenacos is starting,you can check the /Users/topjoy/Desktop/wgs/nacos/logs/start.out RocketMQ安装
Redis服务安装请自行按照网上的教程安装Redis服务 MongoDB数据库安装请自行按照网上的教程安装MongoDB 使用nacos管理平台登陆nacos服务启动nacos服务成功之后,在浏览器中输入:http://localhost:8848/nacos 即可打开nacos的登陆界面,默认的用户名和密码都是nacos。登陆成功之后,就可以对nacos进行管理了。 创建本地环境命名空间登陆nacos之后,点击左侧菜单的 点击OK之后,就成功创建了本地的开发环境命名空间了。然后在命名空间列表中就可以看到刚才创建的Namespace。点击右边的 创建公共配置文件在分布式项目中,有很多配置文件,不同的项目可能引用的是同一份配置,如果每个项目都配置一次的话,不仅重复配置工作量大,而且更新维护也是一件费时的事情,如果每次都是人工修改,也难免会出错。所以可以把内容相同的配置文件创建成公共的配置文件,哪个项目用到这个配置文件,就直接引用文件名即可。 本项目使用了阿里的spring cloud 组件:spring-cloud-alibaba,在nacos中就可以管理分布式项目的配置文件内容,它代替了原来的spring cloud config(配置中心)和eureka(服务发现与注册中心)。 在nacoas中添加配置文件时需要注意的一个是dataId的命令,它的格式是: ${prefix}-${spring.profile.active}.${file-extension}
在本项目中,公共配置的dataId格式示例:xinyue-game-redis-config.yaml,其中xinyue-game是prefix,redis-config是spring.profile.active,.yaml是文件扩展名。 创建Redis配置信息Redis服务请自行安装,配置好密码并启动即可。然后将Redis的信息配置到nacos之中,这样只需要配置一次,多个项目都可以同时引用了。 登陆nacos之后,点击左侧的菜单项: 然点击右下角的Publish按键即可创建成功,然后返回列表界面,就可以看到刚才创建成功的redis-config项了,如果想修改配置内容,可以点击右边的 创建MongoDB配置信息MongoDB服务请自行安装,配置好密码并启动即可。然后将MongoDB的信息配置到nacos之中,这样只需要配置一次,多个项目都可以同时引用了。 登陆nacos之后,点击左侧的菜单项: 然点击右下角的Publish按键即可创建成功,然后返回列表界面,就可以看到刚才创建成功的mongo-config项了,如果想修改配置内容,可以点击右边的 创建Nacos的配置信息因为在整个系统架构中,nacos做为服务发现与注册中心,所以项目需要配置nacos的信息。 登陆nacos之后,点击左侧的菜单项: 然点击右下角的Publish按键即可创建成功,然后返回列表界面,就可以看到刚才创建成功的nacos-config项了,如果想修改配置内容,可以点击右边的 创建RocketMQ配置信息RocketMQ是做为整个系统内部消息通信的基础,安装方式见RocketMQ安装篇。 登陆nacos之后,点击左侧的菜单项: 然点击右下角的Publish按键即可创建成功,然后返回列表界面,就可以看到刚才创建成功的rocketmq-config项了,如果想修改配置内容,可以点击右边的 注意,以上配置信息需要配置成自己当前使用的系统信息。 测试配置信息是否成功可以使用下面的代码,测试配置是否成功 public class NacosConfigService { public static void main(String[] args) throws NacosException, InterruptedException { String serverAddr = "localhost:8848"; String dataId = "xinyue-game-redis-config.yaml"; String group = "xinyue-game"; Properties properties = new Properties(); properties.put(PropertyKeyConst.SERVER_ADDR, serverAddr); properties.put(PropertyKeyConst.NAMESPACE, "local-env"); ConfigService configService = NacosFactory.createConfigService(properties); String content = configService.getConfig(dataId, group, 5000); System.out.println(content); }} 游戏示例项目添加配置游戏服务中心项目在Eclipse中,打开xinyue-game-center项目的config/bootstrap.yml,添加nacos的服务信息与信息配置 logging: config: file:config/log4j2.xmlserver: port: 5003spring: application: name: game-center-server profiles: active: # 配置需要激活加载的文件名 - rocketmq-config - nacos-config - redis-config - mongo-config cloud: nacos: config: group: xinyue-game # 在nacos中创建配置时的group名字 file-extension: yaml # 指定远程配置文件格式 namespace: local-env # 配置所在的命名空间 prefix: xinyue-game # 配置文件前缀,默认是项目名称,它和上面active的文件名共同组成nacos配置的dataId server-addr: localhost:8848 # nacos的地址 在服务器启动的时候,根据上面的配置,就会拼成拉取的配置的dataId为,如下面的日志所示: 2020-05-30 17:14:51 INFO org.springframework.cloud.bootstrap.config.PropertySourceBootstrapConfiguration - Located property source: CompositePropertySource {name='NACOS', propertySources=[NacosPropertySource {name='xinyue-game-mongo-config.yaml,xinyue-game'}, NacosPropertySource {name='xinyue-game-redis-config.yaml,xinyue-game'}, NacosPropertySource {name='xinyue-game-nacos-config.yaml,xinyue-game'}, NacosPropertySource {name='xinyue-game-rocketmq-config.yaml,xinyue-game'}, NacosPropertySource {name='xinyue-game.yaml,xinyue-game'}, NacosPropertySource {name='xinyue-game,xinyue-game'}]}2020-05-30 17:15:01 INFO org.springframework.boot.SpringApplication - The following profiles are active: rocketmq-config,nacos-config,redis-config,mongo-config application.yml的配置默认可以不用修改,端口修改可以根据自己的需要进行修改。 下面的配置信息都和此配置类似。 Web网关服务在Eclipse中,打开xinyue-game-web-gateway项目的config/bootstrap.yml,添加nacos的服务信息与信息配置 spring: profiles: active: - nacos-config # 因为网关不需要数据库等其它的配置,只激活nacos配置即可。 cloud: nacos: config: group: xinyue-game file-extension: yaml # 指定远程配置文件格式 namespace: local-env prefix: xinyue-game server-addr: localhost:8848 application.yml 配置可以根据业务需要自行修改,默认情况下可以不用修改。 游戏网关服务在Eclipse中,打开xinyue-game-gateway项目的config/bootstrap.yml,添加nacos的服务信息与信息配置 spring: profiles: active: # 以下这些配置都配置的nacos的配置中心里面,这样可以共享配置信息 - rocketmq-config - nacos-config - redis-config cloud: nacos: config: group: xinyue-game file-extension: yaml # 指定远程配置文件格式 namespace: local-env prefix: xinyue-game server-addr: localhost:8848 业务配置application.yml默认可以不用修改,如果有业务变化,再根据需求修改即可。 游戏示例登陆服务在Eclipse中,打开FishingHunterLoginServer项目的config/boostrap.yml,添加nacos的服务信息与信息配置 spring: profiles: active: - rocketmq-config - nacos-config - redis-config - mongo-config cloud: nacos: config: group: xinyue-game file-extension: yaml # 指定远程配置文件格式 namespace: local-env prefix: xinyue-game server-addr: localhost:8848 配置applicaion.yml默认可以不用修改。 游戏示例逻辑服务在Eclipse中,打开FishingHunterLogic项目的config/bootstap.yml,添加nacos的服务信息与信息配置 spring: profiles: active: - rocketmq-config - nacos-config - redis-config - mongo-config cloud: nacos: config: group: xinyue-game file-extension: yaml # 指定远程配置文件格式 namespace: local-env prefix: xinyue-game server-addr: localhost:8848 配置application.yml默认可以不用修改。 游戏示例项目启动在Eclipse中启动在各个服务中找到对应的启动类,直接运行即可。
打包成Jar包运行在需要运行的项目pom.xml所以的目录下面,执行下面的命令: mvn clean package 在相应项目的target目录下就可以找到可以运行的jar包。 比如游戏示例的登陆服务,在FishingHunterLoginServer目录下执行 mvn clean package,target目录下就需要 生成: java -jar FishingHunterLoginServer-0.0.1-SNAPSHOT.jar 客户端如果需要启动客户端,需要下载Unity,版本需要大于等于 QQ交流群:66728073 有问必答 更多信息可以关注公从号 谢赏 |
请发表评论