当前位置: 首页 > 知识库问答 >
问题:

我的世界插件帮助(插口)

缪志新
2023-03-14

需要有关minecraft插口插件的帮助。

这是布局(或构建路径,如果你想这样称呼它)

这是主文件的代码(main.java)

package com.angosa;

import org.bukkit.plugin.java.JavaPlugin;

import com.angosa.listener.Listeners;



public class Main extends JavaPlugin {
    @Override

    public void onEnable() {
        getServer().getPluginManager().registerEvents(new Listeners(), this);
        
    }
}

下面是listeners.java的代码(在监听器包中)

package com.angosa.listener;
import org.bukkit.entity.Creeper;

import org.bukkit.entity.EntityType;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.CreatureSpawnEvent;

public class Listeners implements Listener {
    @EventHandler
    public void creatureSpawn(CreatureSpawnEvent event) {
        if(event.getEntityType() == EntityType.CREEPER) {
            
            Creeper creeper = (Creeper) event.getEntity();
            
            creeper.setPowered(true);
            creeper.setHealth(100);
            creeper.setExplosionRadius(200);
            
            
        }
    }
}

然后这里是yml文件

main: com.angosa.Main
name: OPCreeper
version: 1.0
author: Claim

此外,如果版本错误,下面是我将其上传到服务器时的样子。

[18:06:11 ERROR]: Could not load 'plugins/OPCreeper.jar' in folder 'plugins'

org.bukkit.plugin。InvalidDescriptionException:插件无效。yml在org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(javapludinLoader.java:170)~[spigo-1.16.4.jar:git-spigot-37d799b-3eb7236]在org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:144)~[spigot-1.6.4.jar:git-spigot.37d799-3eb7236],在org.插件(CraftServer.java:383)~net.minecraft.server.v1_16_R3.DedicatedServer.init(dedicated server.java:185)~[spigo-1.16.4.jar:git-spigot-37d799b-3eb7236]在net.mine.craft.server.v2_16-R3.mine-craftserver.w(MinecraftServer.java:808)~[spigot-1.6.4.jar:git-spigo-37d79-3eb 7236]。EB7236]在net.minecraft.server.v1_16_R3.minecranftServer.lambda$0(minecrantServer.java:164)~[spigo-1.16.4.jar:git-spigo-37d799b-3eb7236]在java.lang.Thread.run(Thread.java:832)[?:?]原因:org.yaml.snakeyaml.scanner。ScannerException:扫描下一个令牌时,发现无法启动任何令牌的字符“\t(制表符)”。(不要使用\t(制表符)缩进)在“读取器”第7行第1列:

^

at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:419) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:227) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:558) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:235) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:162) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.composer.Composer.getNode(Composer.java:95) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:119) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:150) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:472) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.yaml.snakeyaml.Yaml.load(Yaml.java:411) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.bukkit.plugin.PluginDescriptionFile.<init>(PluginDescriptionFile.java:252) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:165) ~[spigot-1.16.4.jar:git-Spigot-37d799b-3eb7236]
... 6 more

共有3个答案

魏凯捷
2023-03-14

很高兴您开始了spigot开发!

你的插件的问题是你在plugin.yml文件中使用了错误的格式。似乎在第7行你使用了制表符而不是空格。我建议看看这个帮助页面https://www.spigotmc.org/wiki/plugin-yml/找到正确的格式!

祝你好运:)

宰父跃
2023-03-14

不要像插件一样在YAML文件中使用标签。yml使用空格

寿和通
2023-03-14

我在第一个控制台行中发现了问题:

org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml

最后你可以看到:

 (Do not use \t(TAB) for indentation)

在我看来,你只需要:

  1. 清除您的plugin.yml文件并再次正确填充(不使用TAB键)
  2. 将plugin.yml文件放入src文件夹
  3. 导出前保存*

*对我来说,看起来你在 plugin.yml 文件中的“主要”值是:

main: com.angosa.Main.OPCreeper

但是当您在此线程中发送时,正确的值是:

com.angosa.Main

所以不要忘记在导出插件之前保存,我不确定,但这可能是问题所在*

为了向您展示,这里有一个我正在使用的插件示例:

https://i.stack.imgur.com/55JVe.png:软件包浏览器

(OrbeDisplay.java=Main.java)

如果在这之后它不起作用,我会寻找另一个解决方案,所以随时通知我。

对不起,我的英语不好,我来自法国,我刚刚开始学习。

 类似资料:
  • 我想知道是否有一种方法可以使插件具有当用户在我的网站上执行操作时触发的事件。我想这样做来制作一个定制商店,因为我不喜欢 Enjin 或 Buycraft,因为它们不是很可定制。

  • TweenMax是GreenSock Animation Platform(GSAP)动画平台核心文件,TweenMax中文网提供TweenMax插件下载,以及TweenMax使用方法介绍、Tweenlite使用方法介绍、TimelineMax使用方法介绍、TimelineLite使用方法介绍。

  • 任何能回答这个问题的人。我正在配置中存储信标位置。当一个信标被破坏时,我会得到正在破坏的块的位置,并检查它是否与我的配置中的块相等。我不知道为什么它不工作,我甚至做了p.sendmessage,并将两个值作为消息发送,它们是相同的。。。 https://pastebin.com/Kd4eZyJc第1181行是断块事件。 块中断事件: 在命令中设置信标位置: ^^我对每个灯塔都这么做。

  • 使用Juno和Eclipse PDE。尝试创建一个简单的插件(使用模板Hello,World Command)。运行时,日志中会显示以下消息: !消息找不到操作集: 你好世界.action集 正如在Q: Eclipse Missing Action Set中建议的那样,我创建了一个新的工作区,重新创建了项目并重新安装了PDE。这些都没有任何效果。 我该如何解决这个问题?

  • 我正在开发一个新的Eclipse插件,它需要使用Java项目向导中的自定义帮助,如下所示。 Java项目向导第1页 还有...

  • 我想创建我自己的播客应用程序。 我在网上找到了这段预先编写的代码(),并想对其进行调整,以便创建我自己的应用程序。 如何将此代码上载到expo?