略過導覽

設定開發環境

您知道此網頁從 Github Wiki 頁面 自動產生嗎?您可以在 此處 自行改良!
正在尋找教學課程嗎?請造訪 文件首頁有問題嗎?請至 StackOverflow.com 發問。
請注意,此指南並非「使用者指南」。它並非針對使用 Netty 建立應用程式的「使用者」,而是針對希望開發 Netty 本身的貢獻者(「開發者」)所設計。

使用 64 位元作業系統

您必須使用 64 位元作業系統。

安裝必要的建置工具

您必須在您的機器上安裝 64 位元 OpenJDK 8 或以上版本(例如從 AdoptOpenJDKAzul Systems 下載)、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-buildgolang。Fedora/CentOS 上的 ninja-buildgolang 可在 Fedora EPEL 儲存庫中共用。

驗證構建

接著查看程式碼,並使用命令驗證您 的構建環境是否正常運作 ./mvnw install -DskipTests -T1C。這也會啟動您本地的 Maven 快取,讓您稍後可以構建個別模組。

設定 IntelliJ IDEA

Netty 專案團隊將 IntelliJ IDEA 用作主要 IDE,儘管我們也接受使用其他開發環境,只要您遵守我們的程式編寫樣式。

使用與您的作業系統相同位元的版本

如果您是在 64 位元作業系統上,請使用 64 位元的 IntelliJ IDEA 版本。例如,即使您使用的是 64 位元的 Windows,開始功能表捷徑仍指向 32 位元的二進位檔。您必須在安裝目錄中找到 idea64.exe,並使用它。否則,您將會看到 IntelliJ IDEA 抱怨它找不到 io.netty:netty-tcnative:windows-x86_32

取消勾選 Use --release … 編譯器設定

Netty 版本 4.1 及更舊版本將 Java 6 設定為最低需要的 Java 版本,因此需要編譯成 Java 6 位元組碼。然而,為了效能,程式碼庫中也包含對於較新的 Java API 的參照,並適當地以執行時間版本檢查來保護。出於這個原因,Netty 必須編譯成 --source--target 旗標,但 IntelliJ 預設會使用較新的 --release 旗標,它也啟用 API 版本檢查。

使用 --release 旗標會使得 IntelliJ 在構建 Netty 專案時產生編譯錯誤,因此必須在 編譯器設定對話方塊 中將它停用。

程式編寫樣式

下載 這個程式編寫樣式組態,並且將 Netty project.xml 解壓縮至 <IntelliJ config directory>/codestyles 目錄。選擇「Netty project」作為預設的程式編寫樣式。

檢查設定檔

下載、解壓縮,以及匯入 這個檢查設定檔 至您的 IntelliJ IDEA,並將其用作預設。請參閱 這裡 以了解如何匯入檢查設定檔。

確保您的修改不會引入任何檢查警告。如果您認為它是誤報,請使用 @SuppressWarnings 註釋或 noinspection 行註解來抑制警告,IDE 會提供指導。如需瞭解如何使用檢查器,請參閱 網路說明頁面

著作權設定檔

著作權文字

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://www.apache.org/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. 下載 os-maven-plugin,並將它放入 <ECLIPSE_INSTALLATION_DIR>/plugins (Eclipse 4.5) 或 <ECLIPSE_INSTALLATION_DIR>/dropins (Eclipse 4.6) 目錄,以解決 m2e 無法評估我們在 pom.xml 中指定的延伸模組的問題。(雖然名稱看似 Maven 外掛程式,它同時也是一個 Eclipse 外掛程式。)
  3. 透過「檔案 → 匯入... → 現有 Maven 專案」功能匯入專案。
  4. Netty 專案 Maven pom.xml 設定規定使用 Java SE 1.6,但如果存在,它會隱含使用 Java 7/8(1.7/1.8)功能。這可能會導致在 Eclipse 中產生編譯錯誤。有兩種方法可以解決這個問題:
  5. 尋找「視窗 → 偏好設定 → 已安裝的 JRE」功能表: * 確保你已在「已安裝的 JRE」下方提供安裝好的 Java 7/8。* 將此 Java 7/8 安裝映射到 Java 6:「已安裝的 JRE → 執行環境 → Java SE 1.6」
  6. 或者,也可以針對每個 Netty 模組在「專案」基礎上選取 Java 7/8 JRE。
最近檢索於 19-Jul-2024