本帖最后由 Sweeture 于 2022-6-15 20:47 编辑


成品代码如下:
复制代码
>4< 现在类里面的框架也写完了,然后来创建支撑插件的证明部分 > 选择 项目 创建名为plugin.yml的文件
> 在plugin.yml的文件中,输入以下代码 第一行 name: {插件名}
第二行 main: {主类}.{类}
第三行 version: {插件版本}
成品代码如下:
复制代码 PS: "name" 就是所开发插件的名字 ***铭记于心了吗?qwq是英文嗷***
"main" 是方法的意思,格式是 {主类}.{类} 主类就是 >2< 中创建的软件包(主类)的名字,然后后面接着写类的名字
"version" 这个可以自定义 ***是数字***

-->楼主上学,仓促之中有人叫我做教学,没有插图(看反响度,有求必补),不定期更新,冷贴就闲置了
<--
Spigot插件框架零基础教学
零基础:从软件开始教,仅个人心得,无抄袭因素在内,有不同观点的可以积极回帖讨论

· 插件制作需要的__ __ (需要什么下面有啦~)
1 > IntelliJ IDEA Community Edition (这里简称为 "IDEA")
PS: IDEA的环境变量请自行百度,该内容与MC插件制作无关
2 > 一个纯净的Spigot服务端 (这里以1.12.2的Spigot服务端为例)
3 > Minecraft 游戏端
4 > 一颗赤忱和不怕麻烦的心~这是最重要的啦~~~

· 制作步骤(一步步做,一定可以成功;看反响度,好的话我会补图的~)
PS: 下列内容,有“***”批注的代表重点,因为这样更直观,lz就不弄颜色字体了~
>1< 先创建插件的制作框架,余下的都在这个框架里进行操作与制作。
> 进入IDEA
> 新建项目 ***Java模块***
> 输入所开发插件名字 ***最好是英文***
>2< 将Spigot Minecraft服务端导入到插件框架内
> 右键项目创建目录 lib ***服务端目录***
> 打开 lib 目录配置 Minecraft服务器
PS: 也可以直接在 lib 目录文件夹内利用开服证明,开服bat和开服核心等搭建服务端
> 回到IDEA设置项目结构(ctrl+alt+shift+s 项目结构快捷键) - 模块 - 依赖 - 添加JAR服务器核心 - 确定
PS: 打开依赖选项后,点击"+ (Alt+Insert 添加依赖快捷键)"号,点击添加JAR或目录,找到刚刚在lib里创建的服务端的Jar开服核心,添加即可,应用,确定。
***切记添加后一定要在添加的依赖前的方框打勾***
这时候会发现你的项目前面的图标变成了一个黄色的水龙头,该图标则 Minecraft开发者插件 的效果,有了这个就说明依赖添加成功啦!(感谢用户"美味的曲奇"纠正!)
> 右键 src 创建软件包 也叫主类 ***格式:com.name.pluginname 最好英文小写***
PS: com.name.pluginname --> "com.name" 为固定格式
--> "pluginname" 为 >1< 中创建的开发插件的名字 ***再次强调,最好是英文***
> 右键该软件包创建 class 类 ***名为pluginname的类***
PS: 上面com.name.pluginname,你的pluginname是什么,这里class类就填什么,相当于填所开发插件的名字 ***别嫌烦,最好是英文***
>3< 现在框架就已经创建好了,我们开始写内容,让这个小插件运行起来
> 在public class pluginname 后输入 extends
> 接着输入Java
PS: 这时候会有一系列的自动补全,直接选择第一个按回车键
> 调出自动补全为JavaPlugin 其中有合法类继承 import org.bukkit.plugin.java.JavaPlugin
- package com.name.pluginname;
- import org.bukkit.plugin.java.JavaPlugin;
- public class pluginname extends JavaPlugin {
- }
>4< 现在类里面的框架也写完了,然后来创建支撑插件的证明部分 > 选择 项目 创建名为plugin.yml的文件
> 在plugin.yml的文件中,输入以下代码 第一行 name: {插件名}
第二行 main: {主类}.{类}
第三行 version: {插件版本}
成品代码如下:
- name: pluginname
- main: com.name.pluginname.pluginname
- version: 1.0
"main" 是方法的意思,格式是 {主类}.{类} 主类就是 >2< 中创建的软件包(主类)的名字,然后后面接着写类的名字
"version" 这个可以自定义 ***是数字***
> 再次点击文件 - 项目结构 - 工件 - 点击添加 "+" - JAR - 来自具有依赖项的模块
> 从模块创建JAR中***主类为 {主类}.{类}
> 最后点击 应用 创建成功
> 在该页面中把之前添加的JAR开服核心移除,右键,移除
> 添加文件 "+" - 添加创建的 plugin.yml
***切记添加后一定要勾选 "包含在项目构建中" ***
> 更改输出目录至 lib 中服务端的plugins文件夹中
> 最后点击确定
>5< 最后构建项目(ctrl+f9)
> Ctrl+F9
> 构建完成后就会发现在 lib/plugins 的目录中就会有你开发的插件生成了!
>6< 打开lib中的服务端,点击开服;进入游戏 - 多人游戏 - 加入服务器 - 输入指令/pl查看插件列表
> 如果列表里有你的插件且为绿色,那么恭喜你,你的插件开发成功了!
PS: 虽然是毫无卵用的一个插件,但是这是一个框架,做到这里都顺风的话,就说明你这个插件有效了,要编写插件的用途我之后会出教程。

· 楼主的话
该教学所有内容均为自己原创,且所有内容涉及基础,并不需要很大的编程基础,谁都可以上手,是针对大多数插件开发小白的,资深大佬们就当图一乐,有自己的看法也可以多多讨论
当然还是要看反响度了,楼楼学业繁重,如果反响度高的话,也就是真心想学开发插件的朋友们需要的话,我之后会给该章节附图,并且更新开发了插件框架后,怎么给里面写内容
感谢支持啦~~~
教程最好用构建工具吧
gradle maven 之类的
IDEA 的打包与手动的依赖配置不仅复杂,而且难以管理
毕竟大部分API插件都采用其来配置依赖
IDEA 的打包与手动的依赖配置不仅复杂,而且难以管理
毕竟大部分API插件都采用其来配置依赖
美味的曲奇 发表于 2022-6-15 20:32
教程最好用构建工具吧 gradle maven 之类的
IDEA 的打包与手动的依赖配置不仅复杂,而且难以管理
...
IDEA是我习惯的一个软件之一,gradle是相当好的构建工具
我接下去的教程都是以IDEA做的,也不是不能在IDEA中创建gradle项目
相对而言我个人更加熟悉IDEA
各有所长嘛
Sweeture 发表于 2022-6-15 20:36
感谢沙发回复
IDEA是我习惯的一个软件之一,gradle是相当好的构建工具
我接下去的教程都是以IDEA ...
如果用IDEA的话配置会比较繁琐 而且....
谁说IDEA不能创建gradle项目的.jpg
Sweeture 发表于 2022-6-15 20:40
我不是说的“也不是不能”嘛
或许我是星际玩家吧
教程风格可以自己来决定,不过还是推荐在教程中用构建工具
步骤越繁杂,出错率越高,越不容易学
另外还有 图标变水龙头应该是Minecraft 开发者插件的效果,而上文没提,这样是不是容易误解
虽然感觉有点复杂,但是刚刚按照lz步骤一步步做了,确实成功了,对于我这种小白来说确实有很大帮助,lz啥时候更内容开发啊!!
佛山小柏青 发表于 2022-6-15 21:03
虽然感觉有点复杂,但是刚刚按照lz步骤一步步做了,确实成功了,对于我这种小白来说确实有很大帮助,lz啥时 ...
感谢支持~
不定期更新,看反响度咯~