本帖最后由 tiger999 于 2016-8-15 12:40 编辑
上节课,我们做了一个插件,我们今天学习如何做配置文件,话说,我上次忘记给大家布置作业了。。。别打我
5.配置文件
知道服务器的人都知道配置文件吧,就是Config,今天我来教大家如何创建首先创建一个空的插件(详细)
然后和创建plugin.yml一样的方式弄一个config.yml
OK,我们开始写代码了,首先我们先认识Enable和Disable,enable就是在启动时执行的东西,disable就是卸载插件的时候执行的东西
用法是:
public void onEnable() {
//启动时执行XXX
}
和
public void onDisable() {
//卸载是执行XXX
}
注意,这2个是放在命令执行器的上面
一般加载配置是这样的(注意,加载不是读取)
所以,比较常用的话是和onEnable进行搭配
OK,我们加载了是加载了,可是又不能读取又不能写入,怎么办呢?
别急,别急,我们先了解一下config.yml里面的东西是什么
比如说config.yml里面是
a:123
b:123456
c:123456789
那么要读取123就得到路径a
要读取123456就得到路径b
要读取123456789就得到路径c
读写配置最基本的方法
这次不忘记布置作业了——
当玩家输入/tiger msg的时候,读取路径为a的String,并发送给那个玩家
我才几级啊你们看懂了的有金币有人气的都撒起来吧! 没看懂的跟帖问完之后继续金币人气撒起来吧!
回到索引贴
5.配置文件
知道服务器的人都知道配置文件吧,就是Config,今天我来教大家如何创建首先创建一个空的插件(详细)
然后和创建plugin.yml一样的方式弄一个config.yml
OK,我们开始写代码了,首先我们先认识Enable和Disable,enable就是在启动时执行的东西,disable就是卸载插件的时候执行的东西
用法是:
public void onEnable() {
//启动时执行XXX
}
和
public void onDisable() {
//卸载是执行XXX
}
注意,这2个是放在命令执行器的上面
一般加载配置是这样的(注意,加载不是读取)
if(!getDataFolder().exists()) {
getDataFolder().mkdir();
}
File file=new File(getDataFolder(),"config.yml");
if (!(file.exists())) {saveDefaultConfig();}
reloadConfig();
所以,比较常用的话是和onEnable进行搭配
public void onEnable() {
if(!getDataFolder().exists()) {
getDataFolder().mkdir();
}
File file=new File(getDataFolder(),"config.yml");
if (!(file.exists())) {saveDefaultConfig();}
reloadConfig();
getLogger().info("启用完毕!");
}
这里就是首先先创建一个工作文件夹,然后再创建默认的配置(就是,你创建的那个config.yml,因为你刚刚弄出来的Jar里面是没有config.yml的,所以得saveDefaultConfig();才是保存默认)
还有一个就是,这里的getLogger().info("启动完毕!");就是在后台发信息
OK,我们加载了是加载了,可是又不能读取又不能写入,怎么办呢?
别急,别急,我们先了解一下config.yml里面的东西是什么
比如说config.yml里面是
a:123
b:123456
c:123456789
那么要读取123就得到路径a
要读取123456就得到路径b
要读取123456789就得到路径c
读写配置最基本的方法
读
getConfig().get变量类型("路径");
比如说我要读取路径a里面的东西,是一个int类型的,那么就是
getConfig().getInt("a");
假如我要读取路径b里面的东西,是一个String类型的,那么就是
getConfig().getString("b");
当然,有些人就迷惑了,我怎么把这个东西放到变量里面?
很简单,比如说
String a=getConfig().getString("c");
这样子
写
getConfig().set(路径, 内容) 内容可以为String int List什么的自定义配置文件照葫芦画瓢吧!set为null表示删除此节点以及他的所有子节点记得要保存 保存方法:File file=new File(getDataFolder(),"config.yml");try{getConfig().save(file);}
catch
(IOException e){e.printStackTrace();} 要捕捉异常,因为有可能保存不成功当然也有一个直接保存默认config的方法:savaConfig();
这次不忘记布置作业了——
当玩家输入/tiger msg的时候,读取路径为a的String,并发送给那个玩家
我才几级啊你们看懂了的有金币有人气的都撒起来吧! 没看懂的跟帖问完之后继续金币人气撒起来吧!
回到索引贴
上节课,我们做了一个插件,我们今天学习如何做配置文件,话说,我上次忘记给大家布置作业了。。。别打我
5.配置文件
知道服务器的人都知道配置文件吧,就是Config,今天我来教大家如何创建首先创建一个空的插件(详细)
然后和创建plugin.yml一样的方式弄一个config.yml
OK,我们开始写代码了,首先我们先认识Enable和Disable,enable就是在启动时执行的东西,disable就是卸载插件的时候执行的东西
用法是:
public void onEnable() {
//启动时执行XXX
}
和
public void onDisable() {
//卸载是执行XXX
}
注意,这2个是放在命令执行器的上面
一般加载配置是这样的(注意,加载不是读取)
所以,比较常用的话是和onEnable进行搭配
OK,我们加载了是加载了,可是又不能读取又不能写入,怎么办呢?
别急,别急,我们先了解一下config.yml里面的东西是什么
比如说config.yml里面是
a:123
b:123456
c:123456789
那么要读取123就得到路径a
要读取123456就得到路径b
要读取123456789就得到路径c
读写配置最基本的方法
这次不忘记布置作业了——
当玩家输入/tiger msg的时候,读取路径为a的String,并发送给那个玩家
我才几级啊你们看懂了的有金币有人气的都撒起来吧! 没看懂的跟帖问完之后继续金币人气撒起来吧!
回到索引贴
2021.12 数据,可能有更多内容
上节课,我们做了一个插件,我们今天学习如何做配置文件,话说,我上次忘记给大家布置作业了。。。别打我5.配置文件
知道服务器的人都知道配置文件吧,就是Config,今天我来教大家如何创建首先创建一个空的插件(详细)
然后和创建plugin.yml一样的方式弄一个config.yml
OK,我们开始写代码了,首先我们先认识Enable和Disable,enable就是在启动时执行的东西,disable就是卸载插件的时候执行的东西
用法是:
public void onEnable() {
//启动时执行XXX
}
和
public void onDisable() {
//卸载是执行XXX
}
注意,这2个是放在命令执行器的上面
一般加载配置是这样的(注意,加载不是读取)
if(!getDataFolder().exists()) {
getDataFolder().mkdir();
}
File file=new File(getDataFolder(),"config.yml");
if (!(file.exists())) {saveDefaultConfig();}
reloadConfig();
所以,比较常用的话是和onEnable进行搭配
public void onEnable() {
if(!getDataFolder().exists()) {
getDataFolder().mkdir();
}
File file=new File(getDataFolder(),"config.yml");
if (!(file.exists())) {saveDefaultConfig();}
reloadConfig();
getLogger().info("启用完毕!");
}
这里就是首先先创建一个工作文件夹,然后再创建默认的配置(就是,你创建的那个config.yml,因为你刚刚弄出来的Jar里面是没有config.yml的,所以得saveDefaultConfig();才是保存默认)
还有一个就是,这里的getLogger().info("启动完毕!");就是在后台发信息
OK,我们加载了是加载了,可是又不能读取又不能写入,怎么办呢?
别急,别急,我们先了解一下config.yml里面的东西是什么
比如说config.yml里面是
a:123
b:123456
c:123456789
那么要读取123就得到路径a
要读取123456就得到路径b
要读取123456789就得到路径c
读写配置最基本的方法
读
getConfig().get变量类型("路径");
比如说我要读取路径a里面的东西,是一个int类型的,那么就是
getConfig().getInt("a");
假如我要读取路径b里面的东西,是一个String类型的,那么就是
getConfig().getString("b");
当然,有些人就迷惑了,我怎么把这个东西放到变量里面?
很简单,比如说
String a=getConfig().getString("c");
这样子
写
getConfig().set(路径, 内容) 内容可以为String int List什么的自定义配置文件照葫芦画瓢吧!set为null表示删除此节点以及他的所有子节点记得要保存 保存方法:File file=new File(getDataFolder(),"config.yml");try{getConfig().save(file);}
catch
(IOException e){e.printStackTrace();} 要捕捉异常,因为有可能保存不成功当然也有一个直接保存默认config的方法:savaConfig();
这次不忘记布置作业了——
当玩家输入/tiger msg的时候,读取路径为a的String,并发送给那个玩家
我才几级啊你们看懂了的有金币有人气的都撒起来吧! 没看懂的跟帖问完之后继续金币人气撒起来吧!
回到索引贴
本帖最后由 CMD丶BLOCK_ 于 2016-1-10 11:39 编辑
楼主,你的教程写的很好,通俗易懂,我最近想开发一个插件,能加个qq好友么,我qq:1056293351,等级没法给人气,抱歉哈~
楼主,你的教程写的很好,通俗易懂,我最近想开发一个插件,能加个qq好友么,我qq:1056293351,等级没法给人气,抱歉哈~