純規の暇人趣味ブログ

手を突っ込んで足を洗う

[Bukkitプラグイン制作講座-其之一]プロジェクトの作成迄

      2016/12/13    HimaJyun

Bukkitのプラグインを開発するにあたって、まずはプロジェクトの作成を行う必要があります。

どのプログラミング言語でも「HelloWorld」に辿り着くまでが一番難しいでしょうから、解説していきます。

開発環境を整えよう

まずは開発環境を整えましょう。
要は「Eclipseをインストールしましょう」と言う訳です。

まさかPCにJREが入っていないクラフターなんて奴は居ないでしょうから……大丈夫ですよね?

以下の説明はWindowsでの場合です、MacやLinuxだと微妙に異なるらしいのでググって頂ければと思います。

Eclipse(Pleiades)のダウンロード

Pleiades(プレアデス)はEclipseに日本語化を施した、日本では割とスタンダードなJava開発環境です。
(IDEとしてはVisualStudioの方が好みなんですけどね、個人的には……)

Pleiades - 統合開発環境 Eclipse 日本語化プラグインからPleiadesをダウンロードします。

トップページに以下の様な項目があるので、最新版(数字が一番大きい物)をクリックしましょう。
今の所の最新版は「4.5 Mars」の様なのでこれを選択します。
bukkit-plugin-development-lecture-1-001

すると、以下の画像の様にダウンロードボタンが沢山出て来ます。
bukkit-plugin-development-lecture-1-002

「ドレヲエラベバイインダヨ……」状態に陥りますが、Bukkitプラグインを開発するだけであれば「Java」を選んだので充分です。

その中から利用中のOSのビット数(32,64)に合わせた物を選びます。
(ビット数が分かりません?、流石にそれくらいは自力で調べましょう、調べられる能力を身に付けましょう)

FullとStandardがあります、どちらでも構いませんが、Fullには文字通り色々付いています。
早い話、違いが分からない内はFullを選べばいいでしょう、個人的にはFullを推奨しています。
bukkit-plugin-development-lecture-1-003

そこそこファイルサイズがあるので弾幕でも避けながら気長に待ちましょう

インストール

Eclipseはダウンロードしたものを解凍するだけで利用出来ます。

先程のトップページの下の方にさりげなく記載されていますが、Windowsでダウンロードしたzipを解凍する時はパスに意識する必要があります。

日本語、空白が含まれる場所に解凍すると正常に動作しない場合があるらしいです。(Program Filesも空白を含むためアウト)

また、Eclipseの中身に異様にファイル名が長い物が存在しており、あまり入り組んだ場所にEclipseを設置するとパス260文字制限にぶち当たる様です。

7-ZipやLhaplusでの解凍も推奨されていない様です、Windows標準の物を使いましょう(260文字を超えるとエラーが出るため(7-Zipなどではエラー無しに壊れたファイルを作成する))

ちなみにですが、僕はE:\pleiades以下に配置しています。(CはSSDなので容量が……空き140GBありますけど精神衛生的に……)

起動

「解凍した場所\eclipse\eclipse.exe」を起動すると起動します、起動すると起動するんですよ。

起動時にロードを行います、これがとてもとてもとてもとても遅いです、気長に待ちましょう、Javaってそう言う物ですから……

その後、ワークスペースがうんたらかんたら聞いてきます、場所を変更したければ変更して下さい。
bukkit-plugin-development-lecture-1-004

これは起動するたびに質問してきますが、ワークスペースはそう滅多に場所を変える物では無いので「この選択をデフォルトとして使用~~~」にチェックを入れておくと良いでしょう。

むしろ逆にワークスペースを切り替える様な場面あるんですかね……?

プロジェクトの作成

起動すると以下の様な画面が表示されます。(僕の場合は実際にいくつかプラグインを作成しているので色々並んでますけど……)
bukkit-plugin-development-lecture-1-005

Mavenプロジェクトの追加

それでは実際にプロジェクトを作成してみましょう。

まずは「ファイル」->「新規」->「プロジェクト」と進みます。
bukkit-plugin-development-lecture-1-006

その中から「Maven」フォルダを開き「Mavenプロジェクトの作成」を選択し「次へ」進んで下さい。
bukkit-plugin-development-lecture-1-007

「シンプルなプロジェクトの作成」にチェックを入れて「次へ」
bukkit-plugin-development-lecture-1-011

アーティファクトの情報、要はプロジェクトの情報を設定する画面が現れます。
bukkit-plugin-development-lecture-1-008

グループIDは「他人と被ってはいけない」ので、世界で唯一の(人とダブる事のない)物を付ける必要があります。

例えば、ドメインを持つ方であればドメインを逆順にするのが確実でしょう。
(僕の場合はjyn.jpを持っているのでjp.jyn)

ドメインなどを持っていない方はGitHubのアドレスやメールアドレスを逆順に付けるのがおススメです。
(例えば、hogehoge@example.comと言うメールアドレスを持つのであればcom.example.hogehogeなど)

アーティファクトIDは要は「プロジェクト(作成するプラグイン)の名前」です。
今回はSample1としましょう。

それらの情報を入力すると以下の様な感じになるかと思われます。
他にも空欄がありますが、特に必要ないのでそのまま「完了」して下さい。
bukkit-plugin-development-lecture-1-009

「パッケージ・エクスプローラー」に先程作成した「Sample1」が追加されました
bukkit-plugin-development-lecture-1-010

pom.xmlの編集

さて、これだけではまだ何も出来ません。
BukkitのAPI(命令)を呼び出すために依存関係を追加する必要があります。

まず、先程作成したプロジェクト(Sample1)を開いて、その中にあるpom.xmlを開きましょう。
bukkit-plugin-development-lecture-1-012

以下の様な画面が開くと思うので、右下の「pom.xml」に切り替えます。
bukkit-plugin-development-lecture-1-013

最初の状態だと以下のようになっていると思われます。

<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>jp.jyn</groupId>
 <artifactId>Sample1</artifactId>
 <version>0.0.1-SNAPSHOT</version>
</project>

「</project>」の上に以下の内容を追記します。

 <build>
   <plugins>
     <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-compiler-plugin</artifactId>
       <version>2.0</version>
       <configuration>
         <source>1.7</source>
         <target>1.7</target>
       </configuration>
     </plugin>
   </plugins>
 </build>
 <repositories>
   <repository>
     <id>spigot-repo</id>
     <url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
   </repository>
 </repositories>
 <dependencies>
   <dependency>
     <groupId>org.spigotmc</groupId>
     <artifactId>spigot-api</artifactId>
     <version>1.9.2-R0.1-SNAPSHOT</version>
   </dependency>
 </dependencies>

ビルドの際に警告が出るため「<modelVersion>」の上に以下の内容を追記しておくのをおススメします。

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

追加後は以下の様になると思われます。

<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">
  <properties>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <modelVersion>4.0.0</modelVersion>
  <groupId>jp.jyn</groupId>
  <artifactId>Sample1</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.0</version>
        <configuration>
          <source>1.7</source>
          <target>1.7</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <repositories>
    <repository>
      <id>spigot-repo</id>
      <url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>org.spigotmc</groupId>
      <artifactId>spigot-api</artifactId>
      <version>1.9.2-R0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
</project>

みれば分かると思いますが「<version>1.9.2-R0.1-SNAPSHOT</version>」が使用するBukkitのバージョンですね。
(spigot-apiを指定していますが、中身は基本的に同じです)

また「<source>1.7</source>」と「<target>1.7</target>」はJava1.7(Java7の事)を使用する設定です。

pom.xmlの更新

次に、編集したpom.xmlを更新する必要があります。

「パッケージ・エクスプローラー」にあるプロジェクト(Sample1)を右クリックして「Maven」->「プロジェクトの更新」と進んで下さい。
bukkit-plugin-development-lecture-1-014

該当のプラグインに最初からチェックが入っていると思うので、そのまま「OK」を押しましょう。
bukkit-plugin-development-lecture-1-015

これでプロジェクトの作成は完了です、長くなるので今回はここまでとしましょう。
え?、ゆっくり過ぎる?、これくらいが丁度良いんですよ、だってここまでで5100文字あるんですから。

次回はメインクラスを追加してビルドする所までをやってみようと思います。

オマケ:ビルド・パスは実行環境 JavaSE-1.7 を指定しています。

殆どの人はそのまま更新しただけでは「ビルド・パスは実行環境 JavaSE-1.7 を指定しています。この環境と厳密に互換性のあるワークスペースにインストールされた JRE がありません。」と言う警告が表示されると思います。
bukkit-plugin-development-lecture-1-016

これはJava7を指定しているのに使用されるJDKが7以外のバージョン(多くの場合は8)であるために発生します。

PleiadesのStandardを選択した場合はJDKの7をインストールする必要があります。

Fullを選択した場合はあるフォルダの中身をコピペで入れ替えるだけでJava6,7,8を切り替え可能です、僕がFullを推奨したのはそのためです。

まずEclipseを終了して「インストールした場所\eclipse\jre」にあるファイルを全て削除します。
bukkit-plugin-development-lecture-1-017bukkit-plugin-development-lecture-1-018

次に「インストールした場所\java\使いたいバージョン」の中にあるファイルを全てコピーします。
bukkit-plugin-development-lecture-1-019

でもって、それを「インストールした場所\eclipse\jre」に貼り付けすればおkです。
bukkit-plugin-development-lecture-1-020

これでEclipseを起動すると警告が消えると思われます。

其之二は「[Bukkitプラグイン制作講座-其之二]メインクラスの作成、ビルド迄」へどうぞ

今回の記事のソースコードはGitHubからご覧いただけます。

 - プログラミング , ,