企鹅鹅
本帖最后由 !MCqie! 于 2020-4-1 18:59 编辑
[原标题]
腐竹福利!如何使用世界级IDE——IDEA开服
好了不开玩笑,进入正题
[前言]
本教程适用人群:使用IDEA进行Bukkit开发的开发者

灵感来源于Tomcat 的开发
[实现方法]
使用idea执行开服核心的Main方法
使用module开发插件
将module输出路径设置为Plugins文件夹


[图文教程]
第一步:创建空Java项目并创建lib文件夹 将核心文件放到lib文件夹中
第二步:在这个项目里写好main方法 直接调用核心文件的main方法 运行
第三步:创建module 并在module中写好插件
第四步:配置module的输出(注意红色箭头 你们都懂吧)
第五步: 调试 排错

恭喜! 你缩短了大半部分调试插件的时间 省下了大半的青春!!
注意:由于作者粗心致使包名重复,改了一次包名 上面图片可能会有些瑕疵。

[解决下常见的问题]
Q1.我的代码进行了变更 需要重写开启服务器吗?A:可以直接build后通过reload 来应用新的代码
Q2.每次写插件都需要重新配置吗? A:不需要,新插件可以通过新建module 来在老服务器上运行
Q3.效率怎么样? A:目前来看 将服务端放在idea上 效率并不高 因此,渣鸡还是不要尝试



已知优点:
1.轻松分析log文件
2.快速找到问题代码
3.省下了构建的时间
4.管理方便
已知缺点:
1.运行效率低
2.开发的不适应


[在这里解释下将服务端文件放在idea中有什么好处]
1.真正实现了从开发到配置都在idea中完成 不需要切换窗口
2.插件更方便管理
3.检查log文件更方便







Mozy
企鹅牛逼!

wisdomme
本帖最后由 wisdomme 于 2020-4-1 16:18 编辑

企鹅牛逼!(虽然不知道什么意思,但是复读就完事了)

这操作我好像以前在哪看过。

话说,能把文件输出改为别的文件夹吗,项目根目录输出也太憨了吧

企鹅鹅
wisdomme 发表于 2020-4-1 16:09
企鹅牛逼!(虽然不知道什么意思,但是复读就完事了)

这操作我好像以前在哪看过。

你可以试试吧这个运行服务器的主方法也写在module里

不过我感觉这样也挺好的

wisdomme
!MCqie! 发表于 2020-4-1 16:21
你可以试试吧这个运行服务器的主方法也写在module里

不过我感觉这样也挺好的

emmm,这也的话项目树就会很乱啊,我一般喜欢把bukkit.jar放lib里运行

企鹅鹅
wisdomme 发表于 2020-4-1 16:23
emmm,这也的话项目树就会很乱啊,我一般喜欢把bukkit.jar放lib里运行

可能是喜好不同吧,

wisdomme
!MCqie! 发表于 2020-4-1 16:21
你可以试试吧这个运行服务器的主方法也写在module里

不过我感觉这样也挺好的

https://bukkit.org/threads/testi ... tellij-idea.406312/
这个帖子里写了关于用IDEA测试插件的方法,而且好像更实用一点

William_Shi
企鹅大佬好强!
然而我还是选用js
因为直接io流读取js肯定比这个快
而且还可以自写指令动态读取
连服务器rl都不需要
实际开发过程中一般都是分模块测试
所以这样应该最方便了

夏雨吖
本帖最后由 M8_mve 于 2020-4-1 21:23 编辑

感觉这个还是我发现的叭?
而且喵...可以直接跑服务器jar哒

run->Edit Configurations

点这里

选到Jar Application

这里选服务器核心

这里可以自己新建文件夹设置到Workdir防止项目结构乱掉

这两个上面是虚拟机参数下面是核心参数

这里可以随便改名字

然后这里改成设置好哒运行配置就好啦


ksqeib445
本帖最后由 shangenbo 于 2020-4-1 22:15 编辑
要不一起来远程调试?

1.首先Add Configuration



或者是

2.添加一个Remote也可以看看楼上怎么做的)


然后就到重点

复制圈出的地方 点击OK
3.然后到服务端中作为启动参数添加
像这样:


成功后启动会看见启动多出来一句话


4.点击


成功效果


愉快的开启你的调试之旅吧2333
编辑不易 可以的话 给点 泄♂了



635419450
在IDE里直接开服调试也是思路,先收藏了

onlyformods
企鹅大佬好强!
然而我还是选用js
因为直接io流读取js肯定比这个快
而且还可以自写指令动态读取
连服务器rl都不需要
实际开发过程中一般都是分模块测试
所以这样应该最方便了

LingYan
这么麻烦,我还是打包后塞服务器里面开服测试吧

SuperPigeon
很舒服的样子

结冰的离季
直接服务端插件加个Biletool,然后构建时jar输出到plugins文件夹,Biletool就会自动帮你热重载,从改代码到服务器启用只需要几秒
https://github.com/VolmitSoftware/BileTools