基于maven建立第一个Bukkit plugin项目

环境准备:

首先确保已经配置好了JDK和Maven环境

根据模板建立项目:

进入一个准备好的目录,在当前目录下打开命令行并输入下面的命令:

mvn archetype:generate -DgroupId=me.cmiao.mcplugin -DartifactId=TutorialMcPlugin -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart

之后会在当前目录下以项目模板maven-archetype-quickstart建立项目,注意命令中的选项DgroupIdDartifactId确定了当前项目的坐标,而DarchetypeGroupIdDarchetypeArtifactId则指定了模板项目的坐标,命令执行过程中会从远程仓库下载依赖的模板。即使不指定这些选项也会在命令执行过程中提示用户交互式的输入。

编写代码:

删除\src\main\java\me\cmiao\mcplugin中的App.java,并新建一个源文件TutorialMcPlugin.java,在其中写入以下代码:

package me.cmiao.mcplugin;  
import org.bukkit.plugin.java.JavaPlugin;

public class TutorialPlugin extends JavaPlugin{
	@Override
	public void onEnable() {
		getLogger().info("onEnable is called!");
	}
	@Override
	public void onDisable() {
		getLogger().info("onDisable is called!");
	}
}

TutorialPlugin继承了JavaPlugin,是该插件的主类,重写的两个方法onEnableonDisable实现在插件被服务端加载和卸载时输出信息。

之后在\src\main\resources目录下添加plugin.yml文件,编写内容如下:

name: TutorialPlugin
version: 1.0
main: me.cmiao.mcplugin.TutorialPlugin
author: caoxm-me

由于我们不适用测试代码,所以删除\src\test\java下面的测试类。

修改pom.xml:

该文件在项目的根目录,在项目生成时被自动创建,这里修改的主要是dependencies元素,用来引用Spigot API。

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>me.cmiao.mcplugin</groupId>
  <artifactId>TutorialMcPlugin</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>TutorialMcPlugin</name>
  <url>http://maven.apache.org</url>
  <repositories>
    <!-- This adds the Spigot Maven repository to the build -->
    <repository>
        <id>spigot-repo</id>
        <url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
    </repository>
  </repositories>

  <dependencies>
    <!--This adds the Spigot API artifact to the build -->
    <dependency>
           <groupId>org.spigotmc</groupId>
           <artifactId>spigot-api</artifactId>
           <version>1.15.1-R0.1-SNAPSHOT</version>
           <scope>provided</scope>
    </dependency>

    <!--This adds the Bukkit API artifact to the build -->
    <!-- Do not include this in the pom.xml file if the Spigot API is already added -->
    <dependency>
            <groupId>org.bukkit</groupId>
            <artifactId>bukkit</artifactId>
            <version>1.15.1-R0.1-SNAPSHOT</version>
            <scope>provided</scope>
    </dependency>
  </dependencies>
</project>

编译打包:

mvn compile
mvn package

成功后会在\target目录下发现输出的jar包,拖到服务端的plugins目录下后,reload服务端后会看到下面的输出信息:

发布了7 篇原创文章 · 获赞 8 · 访问量 193

猜你喜欢

转载自blog.csdn.net/cxm2643199642/article/details/103739557
今日推荐