启用Bukkit插件时出现“无效的plugin.yml”消息

时间:2015-04-28 20:26:47

标签: java yaml bukkit

我正在开发我的第一个Bukkit插件。这是我在main包中的eruverio.EruvPlg课程:

package eruverio.EruvPlg;

import org.bukkit.plugin.java.JavaPlugin;

public final class main extends JavaPlugin {

}

这是plugin.yml

name: Test
main: eruverio.EruvPlg.main
version: 1.0

项目结构:

| Project
----| src/main/java
|   ----| eruverio.EruvPlg (Package)
|       ----| main.java
|           ----| main (class)
|
----| src/main/resources
|   ----| plugin.yml
|
----| pom.yml

'pom.yml':

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>eruverio.EruvPlg</groupId>
  <artifactId>main</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <build>
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <configuration>
                  <source>1.7</source>
                  <target>1.7</target>
              </configuration>
          </plugin>
      </plugins>
   </build>
   <repositories>
       <repository>
         <id>bukkit-repo</id>
         <url>http://repo.bukkit.org/content/groups/public/</url>
       </repository>
   </repositories>
   <dependencies>
       <dependency>
           <groupId>org.bukkit</groupId>
           <artifactId>bukkit</artifactId>
           <version>1.7.2-R0.2</version>
           <type>jar</type>
           <scope>provided</scope>
       </dependency>
   </dependencies>
</project>

当我在Bukkit服务器上运行导出的JAR文件时,它会引发异常:

    [14:09:14] [Server thread/ERROR]: Could not load 'plugins\EruvPlg.jar' in folder 'plugins'
org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:247) ~[bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:133) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugins(CraftServer.java:255) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at org.bukkit.craftbukkit.v1_7_R1.CraftServer.<init>(CraftServer.java:233) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at net.minecraft.server.v1_7_R1.PlayerList.<init>(PlayerList.java:63) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at net.minecraft.server.v1_7_R1.DedicatedPlayerList.<init>(SourceFile:14) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.java:126) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:424) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [bukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
Caused by: java.io.FileNotFoundException: Jar does not contain plugin.yml

... 9 more

我该如何解决这个问题?

4 个答案:

答案 0 :(得分:0)

&#39; plugin.yml&#39;文件必须放在项目的主文件夹中。

| Project
----| src/main/java
|   ----| eruverio.EruvPlg (Package)
|       ----| main.java
|           ----| main (class)
|
----| src/main/resources
|
----| plugin.yml
|
----| pom.yml

答案 1 :(得分:0)

看起来你已经正确设置了所有内容,但根据最后一条消息,它看起来没有看到你的plugin.yml“引起:java.io.FileNotFoundException:Jar不包含plugin.yml”。

另外,项目名称Test是?我很确定plugin.yml中的Name:必须与实际的项目名称相匹配。我只看到你将项目称为Project而不是Test。

答案 2 :(得分:0)

有些编辑不直接添加你的plugin.yml ...下载或保存它并使用像7zip这样的程序打开它并把它放进去。如果你没有plugin.yml ,使用bukkit.org wiki查找有关如何使用它的完整教程。

答案 3 :(得分:-1)

您还需要将主要课程放在主要课程中。 所以它会是:

main: eruverio.EruvPlg.main.main