ナビゲーションをスキップ

開発環境のセットアップ

このページはGithub Wikiページから自動生成されていることをご存知ですか? こちらからご自身で改善できます!
チュートリアルをお探しですか? ドキュメントホームをご覧ください。 質問がありますか? StackOverflow.comで質問してください。
このガイドは、Nettyを使用してアプリケーションを構築する「ユーザー」のためのものではなく、Netty自体を開発したい貢献者(「開発者」)のための「ユーザーガイド」ではないことに注意してください。

64ビットオペレーティングシステムを使用する

64ビットオペレーティングシステムを使用する必要があります。

必要なビルドツールをインストールする

AdoptOpenJDKまたはAzul Systemsなどのベンダーから提供されている64ビットOpenJDK 8以降、Apache Maven 3.1.1以降、およびGitがマシンにインストールされている必要があります。

Linuxを使用している場合は、次のパッケージをインストールする必要があります

# yum install lsb-core autoconf automake libtool make tar \
              glibc-devel libaio-devel openssl-devel apr-devel \
              lksctp-tools

# apt-get install autoconf automake libtool make tar \
                  libaio-dev libssl-dev libapr1-dev \
                  lksctp-tools

または、MacOSを使用している場合

brew install autoconf automake libtool openssl

そして、gitの設定に注意を払う必要があります。Windowsを使用している場合、コードをチェックアウトすると、LFは自動的にCRLFに変換されます

git config --global core.autocrlf true

または、MacOSを使用している場合、コードをコミットすると、CRLFは自動的にLFに変換されます

git config --global core.autocrlf input

詳細については、ネイティブトランスポートの構築も参照してください。

netty-tcnative(つまり、BoringSSL部分)をビルドするには、cmakeninja-build、およびgolangパッケージもインストールします。Fedora / CentOSのninja-buildgolangは、Fedora EPELリポジトリで入手できます。

ビルドを確認する

次に、コードをチェックアウトし、ビルド環境が./mvnw install -DskipTests -T1Cで動作することを確認します。これにより、ローカルのMavenキャッシュも準備され、後で個々のモジュールをビルドできます。

IntelliJ IDEAを設定する

Nettyプロジェクトチームは、プライマリIDEとしてIntelliJ IDEAを使用していますが、コーディングスタイルに準拠している限り、他の開発環境を使用しても問題ありません。

OSと同じビットバージョンを使用する

64ビットオペレーティングシステムを使用している場合は、64ビットバージョンのIntelliJ IDEAを使用してください。たとえば、64ビットWindowsを使用している場合でも、スタートメニューのショートカットは32ビットバイナリを指しています。インストールディレクトリでidea64.exeを見つけて、代わりに使用する必要があります。そうしないと、IntelliJ IDEAがio.netty:netty-tcnative:windows-x86_32が見つからないと訴えます。

Use --release …コンパイラ設定のチェックを外す

Nettyバージョン4.1以前は、最小限必要なJavaバージョンとしてJava 6をターゲットとしているため、Java 6バイトコードにコンパイルする必要があります。ただし、パフォーマンスのために、コードベースには、ランタイムバージョンチェックで適切に保護された、新しいJava APIへの参照も含まれています。このため、Nettyは--sourceおよび--targetフラグを使用してコンパイルする必要がありますが、IntelliJはデフォルトで、APIバージョンチェックも有効にする新しい--releaseフラグを代わりに使用します。

--releaseフラグを使用すると、IntelliJがNettyプロジェクトをビルドするときにコンパイルエラーが発生するため、コンパイラ設定ダイアログで無効にする必要があります。

コードスタイル

このコードスタイル設定をダウンロードし、Netty project.xml<IntelliJ config directory>/codestylesディレクトリに解凍します。「Netty project」をデフォルトのコードスタイルとして選択します。

インスペクションプロファイル

このインスペクションプロファイルをダウンロード、解凍、インポートして、IntelliJ IDEAにインポートし、デフォルトとして使用します。インスペクションプロファイルのインポート方法については、こちらを参照してください。

変更によってインスペクションの警告が発生しないことを確認してください。誤検知と思われる場合は、IDEのガイダンスに従って、@SuppressWarningsアノテーションまたはnoinspection行コメントを使用して警告を抑制します。インスペクターの使用方法の詳細については、ウェブヘルプページを参照してください。

著作権プロファイル

著作権テキスト

Copyright $today.year The Netty Project

The Netty Project licenses this file to you under the Apache License,
version 2.0 (the "License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at:

  https://apache.dokyumento.jp/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.

コメントで著作権を検出するためのキーワード

The Netty project licenses

古い著作権に含まれている場合、著作権の置換を許可する

The Netty project licenses

M2EとJava 7/8でEclipseを設定する

  1. 64ビットバージョンのEclipseを使用していることを確認してください。
  2. m2eがpom.xmlで指定された拡張機能を評価しない問題を回避するために、os-maven-pluginをダウンロードし、<ECLIPSE_INSTALLATION_DIR>/plugins(Eclipse 4.5)または<ECLIPSE_INSTALLATION_DIR>/dropins(Eclipse 4.6)ディレクトリに配置します。(名前とは異なり、MavenプラグインとEclipseプラグインの両方です。)
  3. 「ファイル→インポート...→既存のMavenプロジェクト」メニューからプロジェクトをインポートします。
  4. NettyプロジェクトMavenのpom.xml設定では、Java SE 1.6の使用が規定されていますが、Java 7/8(1.7 / 1.8)機能が存在する場合は暗黙的に使用されます。これにより、Eclipseでコンパイルエラーが発生する可能性があります。この問題を回避するには、2つの方法があります
  5. 「ウィンドウ→設定→インストールされたJRE」メニューをご覧ください。*「インストールされたJRE」にJava 7/8インストールが利用可能であることを確認してください*このJava 7/8インストールをJava 6にマップします。「インストールされたJRE→実行環境→Java SE 1.6」
  6. または、NettyモジュールごとにプロジェクトごとにJava 7/8 JREを選択できます。
最終取得日:2024年7月19日