AutoPlug-Clientはスタンドアロンの実行可能なJavaプログラムで、複数の実行モード(サーバーラッパー、CLIツール、バックグラウンドサービス)を持ちます。主な目的は、サーバー関連のソフトウェアの自動更新と、サーバーのメンテナンスを簡素化することです。すべてのサーバータイプ(Steamゲームサーバーを含む)に対応していますが、その機能の大部分は、世界で最も売れているゲームであり、非常に広範なモッディングコミュニティを持つMinecraftに特化しています。
リンク
- 安定版/ベータ版はAutoPlug-Releasesリポジトリからダウンロードできます。
- AutoPlug-Client-Developmentをフォローして、現在の開発状況を確認してください。
- 寄付で開発を支援してください。
- 問題や質問がありますか? FAQをチェックするか、ライブチャット/ボイスサポートのためにDiscordに参加してください。
何ができるのか?
- 自動化された自己更新、サーバーソフトウェア、プラグイン、モッド、およびJRE(Javaランタイム環境)の更新
- スケジュールされたサーバー再起動
- 自動化されたモジュール化バックアップ作成
- 高速、非同期、マルチスレッドのタスク実行
- 同期(共有)フォルダの利用
- サーバーの起動、停止、再起動および最新の更新結果の概要を表示するWebパネル
- オンラインコンソール
- オンラインファイルマネージャー
- スタッフアクセス
- プラグイン詳細データベース
ステータス
安定かつ機能完備のため、コミュニティ主導の開発となっており、リード開発者は新機能の開発を行わず、他者からのプルリクエストに依存します。ただし、セキュリティ問題や重大なバグについては例外です。コミュニティプロジェクト
- Dockerサポート: https://github.com/lkkuma/AutoPlug-Client-Docker
- Pterodactlyパネルサポート: https://github.com/ImLunaUwU/PteroPlug
また、Maven/Gradle/Sbt/Leinigen を通じて依存関係として追加することで、プロジェクトにAutoPlugを組み込むこともできます。便利なクラスの一つにAutoPlugConsoleがあり、これを使うとAutoPlugコマンドをプログラムから実行できます。
AutoPlugConsole.executeCommand(".check plugins");
AutoPlugConsole.executeCommand(".check server");
// etc...
Contribute 
ご協力いただきありがとうございます、コミュニティは💙それを歓迎します!以下の点にご注意ください:
- 大きな変更を行いたい場合は、まずIssueを作成して議論しましょう。
- 大きな変更はテストの作成も必要です。
- オープンなIssueは自由に選んで作業できます。作業中であることを知らせてください。
- メモリ使用量を最小限にするために、staticメソッド/フィールド/クラスの使用と作成は避けてください。
一部のオープンIssueにはこのようなタグ/ラベルが付けられています:bounty: 15€(リストを見る)。これは、そのIssueを修正・解決するプルリクエストを最初に作成した人に報酬(15€)が支払われることを意味します。実装した修正や機能が動作することを示すテストが少なくとも1つ必要です。また、支払いはPayPalのみで行われるため、プルリクエストにコミットするGitHubの公開プロフィールにPayPalのメールアドレスがどこかに記載されていることを確認してください。報酬付きIssueにコミットすることでこれらの条件に同意したことになります。
詳細:
- Java(JDK 8)で記述され、IntelliJ IDEA内で開発。
- 1JPMでビルド。コマンド:
java ./src/main/java/JPM.java
andRunを追加)。ライブラリ
このリストは古くなっている可能性があります。現在の依存関係はbuild.gradleファイルを確認してください。
- AutoPlug-Coreは、すべてのAutoPlugプロジェクトで頻繁に使われるコードを1つのjarにまとめています。
- Dream-YamlはYAMLファイルの処理に使用されます。
- Better-Threadは「ライブタスク」の表示を可能にします。
- コンソールのカラーリングとタスク表示にはJansiとJlineを使用。
- Zip4jはjar/zipの解凍と処理に使用。
- サーバーの再起動はQuartzでスケジューリングされます。