アンインストールコマンド
プラグインをサーバから削除します。
コマンド概要 - /kpm uninstall
プラグインをサーバから削除(アンインストール)します。
ヒント
この操作では、プラグインのデータフォルダ(例:plugins/TeamKUNPluginManager
)は削除されません。
これらを削除する場合、このコマンドの実行後に clean コマンドを実行してください。
エイリアス
- remove
- rm
コマンド構文
uninstall <プラグイン名> [プラグイン名2...]
権限
kpm.uninstall
kpm.*
アンインストールの流れ
アンインストールコマンドを発行した後の KPM の動作と、ユーザが必要な操作を包括的に説明しています。
動作1. プラグインを検索する
アンインストール対象のプラグインを列挙します。
動作2. 環境をチェックする
KPM はプラグインを削除しても問題がないかを確認します。
チェックされる項目は以下の通りです:
- プラグインが除外リストに含まれているかどうか
プラグインが除外リストに含まれている場合、かつ強制的にインストールできる場合は、以下の選択肢が表示されます。
- y - はい
警告を無視してプラグインをインストールします。
危険
この警告はシステムを保護するために表示されています。これを無視すると、予期しない問題を引き起こす可能性があります。
- n - いいえ
インストールをキャンセルし、全てのキャッシュを破棄します。
- 他のプラグインに依存されているかどうか
Bukkit と Java の仕様上、他のプラグインに依存されているプラグインを削除すると
NoClassDefFoundError
などのエラーが発生します。
KPM はサーバ環境を保護するために、依存関係となっているプラグインアンインストールを推奨していません。 そのような依存関係がある場合は、処理方法を選択するプロンプトが表示されます。
d - 依存関係を無効化
依存されているプラグインを無効化( disable )します。u - 依存関係をアンインストール
依存されているプラグインもアンインストールします。i - 依存関係を無視
依存関係の処理を無視してアンインストールを続行します。
危険
この操作は予期しないエラーを引き起こす可能性があります。
c - キャンセル
アンインストールをキャンセルし、全てのキャッシュを破棄します。
動作3. アンインストールの続行確認
本当にプラグインをアンインストールするかを確認するプロンプトが表示されます。
プロンプトには、削除を選択した依存関係を含むすべてのアンインストール対象のプラグインが表示されます。
y - はい
アンインストールを続行します。危険この操作は永久的であり、元に戻すことはできません。
n - いいえ
アンインストールをキャンセルし、全てのキャッシュを破棄します。
動作4. プラグインの削除順を計算する
KPM は、依存関係を考慮したプラグインの削除の順番を計算します。この決定は、依存関係ツリーに基づき行われます。
動作5. プラグインを削除する
以下の処理を1単位として全てのプラグインに対して実行します。
- レシピを全て削除する
削除されるレシピのカスタマイズについてはこちらを参照してください。 - プラグイン・コマンドを全て削除する
- プラグインの
onDisable()
メソッドを呼び出す - Bukkit をインジェクションし、プラグインのエントリを削除する
- プラグインのクラスをアンロードする(プラグインのクラスローダーを破棄する)
この手順は、アンインストール対象のプラグイン一つずつに適用されます。
また、全てのプラグインの削除後、以下の内容が実行されます。
- サーバ JVM の ガベージ・コレクション(GC) を実行する
- プラグインの
.jar
ファイルを削除する
この操作は非同期で行われます。 - プレイヤのコマンドを再読込する