名字空間

Share

Share
動作

警告:根据CC BY-NC-SA 3.0协议,所有从wiki搬运的资料都必须写上来源出处(中文Minecraft Wiki),否则将被视为侵权行为!详细阅读

教程/架設伺服器

出自Minecraft Wiki
跳轉到: 導覽, 搜尋
警告

在依照本頁面上的所有步驟架設伺服器之前,請注意如果您不清楚您自己在做什麼而運行服務端軟體,將會導致您的系統出現錯誤甚至出現崩潰。[1]

此頁面的(部分)內容需要被翻譯。
你可以幫助我們來翻譯此頁面

在這個教程中,我們將通過手把手的方式,一步步地幫助你建立屬於你自己的Minecraft伺服器。在該教程中,我們使用Mojang發布的供玩家免費下載的伺服器端程序,該程序在大部分操作系統(比如Windows,Mac OS以及Linux等)上都可以運行。

首先,你可以根據你所使用的操作系統,前往官方的下載頁面,下載所需的Minecraft伺服器端程序。我們建議你新建一個文件夾用於保存伺服器端文件。(下載後請確認下載的伺服器端文件是否是 minecraft_server.jar 或者 minecraft_server.exe,因為有時你的瀏覽器會將可執行文件重命名。)

注意:網上也有許多Minecraft的第三方伺服器端程序,不過它們都是不受Mojang技術支持的。——這類伺服器可能有更好的性能和一些額外功能。此類伺服器的搭建建議另外尋找文檔。

目錄

[編輯] 注意事項

鑒於您正在一步步地開啟您自己的伺服器,您應該要注意所有可能出現的危險性。雖然我們並不能阻止其他人運行伺服器而導致產生各種針對系統的危害,但我們至少可以呼籲各位:如果您不知道您自己在做什麼,請不要根據下面的教程架設伺服器。運行下面的所有教程(應該)不會導致您的系統出錯,但是鑒於本頁面乃wiki頁面,所有人都可以編輯(包括翻譯這段話的我),與此同時我們並不知道您的系統配置與軟體運行情況。我們並不能保證您的系統不會出現問題。為了確保您根據下面的教程架設伺服器而不會出現問題,我們強烈推薦您至少知道以下的內容:

  • 基本的網路搭建術語(IP、DHCP、網路埠等)
  • 您的系統配置
  • 您的網路構成環境
  • (如果您有路由器或交換機等)您的路由器配置

當然,如果您並不希望自己搭建伺服器,我們歡迎您加入其他伺服器,其他伺服器列表可以在這裡找到。

[編輯] 快速配置

該自然段是對本文內容的簡要概括。如果您有閱讀困難,或者需要對於您的平台的特殊指導,請閱讀餘下的段落。

  1. 在終端或命令提示符輸入java -version,檢查是否安裝了java 且版本至少1.6。
  2. 若未安裝,前往java.com下載,或者是用自帶的包管理器搜索安裝。您也可以將PATH變數做以下調整,如果您有java程序的話:
    • Windows用戶在bat文件中在程序運行前進行set "PATH=<java目录>;%PATH%"
    • Linux/Mac/*nix用戶使用 PATH=<java目录>:$PATH
  3. 在伺服器文件目錄下新建一個.bat文件。Mac/Linux用戶使用.sh。
  4. 內容:java <需要的额外java参数> -Xmx<最大内存> -Xms<最小内存> -jar "<文件名>" <需要的服务器参数,如nogui>不過也可以cd進入伺服器文件目錄直接這樣做,不製作腳本文件。
  5. 運行腳本文件。Windows直接雙擊,Linux/Mac/*nix 建議chmod +x <文件名> && sh <文件名>
  6. 啟動成功,第一次啟動會進行地圖生成。有關配置按server.properties文件的定義操作。

[編輯] Windows 操作指導

[編輯] 需求:確認你的操作系統安裝了最新版本的Java環境

  1. 確保你安裝了Java 7。除非Sun公司官方發布,否則不要安裝Java 8/9,除非你想做軟體調試。為了檢查當前的Java環境,我們可以打開一個命令提示符(CMD)窗口。
    • Windows Vista/7 系統下,點「開始菜單」,在搜索框中輸入 cmd,回車。
    • Windows XP 系統下,點「開始菜單」-> 「運行」,然後輸入 cmd 並回車。你也可以使用「運行」的快捷鍵:Windows鍵 + R。
    • 在命令提示符窗口,輸入命令java -version並回車。
    • 窗口中應該會顯示當前你的電腦的Java版本,應該為 "Java version 1.7"。
  2. 如果你得到了無效的命令錯誤提示, "'Java' 不是内部或外部命令,也不是可运行的程序或批处理文件",那麼你的電腦上運行的可能是早期Java版本(比1.6早)或者根本就沒有Java環境。
    • 對於32位系統的用戶,可以到此處下載最新版本的Java。如果你的系統是64位的,確保你下載的是Windows x64 Java包。
    • 在你安裝了最新版的Java之後,你可以嘗試在命令提示符窗口再次輸入java -version並回車。
      如果你依舊得到錯誤提示,請嘗試以下步驟,將Java添加到你的系統環境變數中去。
      1. 右鍵點擊「我的電腦」。
      2. 點「屬性」。
      3. 點「高級系統設置」。
      4. 點「環境變數」。
      5. 在「系統變數下」,選中「Path」變數。
      6. 點編輯,在內容的結尾處加上;"c:\Program Files\Java\jre6\bin"。如果你在64位系統上使用32位Java,則使用;"c:\Program Files (x86)\Java\jre6\bin"
      7. 重啟電腦。
      8. 再次打開命令提示符輸入java -version並回車,驗證。

[編輯] 啟動Minecraft伺服器端程序 (.exe 版)

  1. 雙擊「Minecraft_Server.exe」文件。伺服器程序將會以默認配置啟動。
    • 第一次啟動時,會顯示一些「file not found」(文件無法找到)的錯誤提示。這是正常的,這些文件正在創建當中。
    • 第一次啟動之後,我們可以開始配置伺服器文件了。首先將打開的伺服器程序關閉:在命令窗口裡輸入stop。之後我們開始按照下面的指導進行伺服器配置。

[編輯] 增加Minecraft伺服器端程序所佔用的內存

如果你想讓你的伺服器端程序佔用更多的內存,你就需要創建一個批處理文件。沒關係,這比聽起來容易。

  1. 打開「記事本」(不是「寫字板」喲),新建一個文本文件。
  2. 確認下你的Windows系統是32位的還是64位的,可以在控制面板裡面查看。並且確認下你的Java版本是32位的還是64位的。
  3. 根據你的系統以及Java版本……
    1. 如果Windows系統是32位的或者是64位且安裝的是64位的Java,複製下面的內容到你的文本文件中(只佔一行。如果使用Java 6,請根據命令中的目錄):
      "C:\Program Files\Java\jre6\bin\javaw.exe" -Xmx2048M -Xms2048M -jar "Minecraft_Server.exe"
    2. 如果你因為一些奇怪的原因,正在64位系統上運行32位的Java,升級你的Java。並且,如果你把Java裝載其他目錄里了,或者你重命名了Minecaft伺服器程序文件,見下:
    3. 如果你在64位系統上有32位的Java,Java.com會通過瀏覽器判別你的版本,對於一些32位的瀏覽器,會推薦給你下載32位的Java。在這樣情況下,為確保萬無一失,請把32位和64位的Java都下載並安裝了吧。
    • 文本文件這一行到底是什麼意思呢? 這條可執行命令("C:\Program Files\Java\jre6\bin\javaw.exe"))是一個文件地址,指向你系統最新的javaw.exe。如果你的Java版本是8,你應該把命令中的'jre6'改成'jre8',如果你把Java安裝在了其他地址下,你就需要找到那個地址,複製粘貼過來,替換到上面這個錯誤地址。 下一部分(-Xmx2048M -Xms2048M)表示你分配的內存大小。以MB(MegaBytes,兆)計算。默認情況下,你伺服器只會使用100MB內存,這對於Minecraft伺服器來說太小了。大部分用戶會分配給伺服器程序1024MB(也就是1GB),或者2048MB(2GB)也是一般推薦的。 下一個,參數-jar,是用來表示Minecraft_Server.exe是Java架構程序的。
    • 在這條可執行命令的最後是我們的.exe文件的名字(Minecraft_Server.exe)。一般來說,名字是Minecraft_Server.exe. 大小寫不區分,不一樣沒關係,如果你的.恩建已經改名,就把這條命令里的文件名也改成你相應的名字。最後,點 文件->另存為...,將文件取名為run.bat,並且確保在窗口的文件類型那,選中為所有文件(*.*)。 然後保存到和你伺服器端程序所在相同的目錄下。雙擊剛建立的run.bat文件。如果一切都按照正確步驟坐下來,你就會注意到現在你的伺服器程序申請到更多的內存了!

如果Windows沒有識別出文件類型(你可能會被提示選擇用什麼程序來打開),這也許是因為Minecraft_Server缺少了.exe文件名後綴。我們可以通過重命名Minecraft_Server為Minecraft_Server.exe來修正這個問題。如果問題解決,程序的圖標就會變成Minecraft的圖標(方塊)。 如果還是沒解決,你需要打開命令提示符窗口,點「運行」,輸入cmd回車。然後你需要將命令提示符窗口當前地址定位到你創建的文件夾地址去。

按照以下步驟來:

  1. 確保你在正確的盤符(一般是C盤)。輸入 C: 然後回車來進入C盤。
  2. 現在你需要打開你的目錄。輸入 cd \"folder name" 然後回車,要包含引號部分。
  3. 確認你在正確的目錄下了,輸入 dir 然後回車你會看到你當前所在目錄下的所有文件和目錄。如果正確的話,你應該可以看到minecraft_server在其中。
  4. 重命名Minecraft。輸入 rename minecraft_server minecraft_server.exe 然後回車,這麼做會將.exe後綴添加到文件名上,使文件變成可執行文件。之後就應該可以正確的打開運行了。

[編輯] 啟動Minecraft伺服器端程序 (.jar 版)

  1. 如果你用的是.jar版的伺服器端程序,你需要在環境變數中添加正確的Java地址。要完成這一操作,請回到前面的「確認你的操作系統安裝了最新版本的Java環境」指導章節。
  2. 要在Windows上運行jar版本的Minecraft伺服器端程序,先用「記事本」新建一個文本文件,然後粘帖以下內容進去:
  3. java -Xms512M -Xmx1024M -jar minecraft_server.jar
  4. 保存為 startserver.bat,放在與minecraft_server.jar相同的目錄下。 .bat文件是批處理文件。
  5. 雙擊 startserver.bat,伺服器就開始運行了。

[編輯] 在不改動環境變數的情況下,啟動jar格式伺服器端程序

要在不改動你系統環境變數的情況下啟動jar格式伺服器端程序,你需要在你的start.bat批處理文件中添加java路徑。因為不需要改動系統變數,所以這個方法比之前的要方便並且安全。

  1. 首先用「記事本」打開你之前建立的批處理文件start.bat(或者別的什麼名字)
  2. 在首行,加入
    @echo off
    ,這行命令使得「命令提示符」窗口隱藏,不會在你啟動批處理文件時跳出來。
  3. 第二行,確保你的系統上可以找到Java(也叫Java運行庫或JRE)。目前的Windows計算機上最普遍的是"C:\Program Files (x86)\Java\jre7\bin\java.exe",因此,你需要在第二行寫上:
    path=%PATH%;%ProgramFiles(x86)%\Java\jre7\bin\java.exe
    ,在此 %PATH% 包含著已經存在的系統變數,而 %ProgramFiles(x86)% 會指向你的系統Project Files目錄,一般是 "C:\Program Files (x86)"。
  4. 最後,確保最後一行是伺服器啟動命令:
    java -Xms512M -Xmx1024M -jar minecraft_server.jar
  5. 如果你不想使用圖形界面(GUI),只需要在這行結尾加上 nogui。也就是:
    java -Xms512M -Xmx1024M -jar minecraft_server.jar nogui

[編輯] Mac OS X 設置指南

在Mac OSX上設置Minecraft伺服器,相比Windows上要"更複雜",原因是官方並沒提供簡單的Mac OSX支持的應用程序。我們在此提供了一個完整的視頻教程。須知伺服器端在OSX 10.4 Tiger 上無法正確運行並且可能使電腦崩潰。

[編輯] 下載

確保你有最新的伺服器端應用軟體。伺服器端軟體可以到這裡下載。在頁面上的「Multiple Server」下面找到「Minecraft_Server.X.X.X.jar」(X.X.X為伺服器端版本號。)並下載。

[編輯] 安裝Java環境

Mac OS X系統本身已經包含了Java 1.6,如果沒有Java,可以運行Minecraft程序,就會提示是否安裝Java 1.6。 (注意,運行伺服器不需要使用Java 1.7或更高。除非必要,否則不需要下載Java 1.7)

[編輯] 架設Minecraft伺服器

確保你根據已經完成了上面的下載步驟,然後開始接下來的操作:

  • 創建一個文件夾,將minecraft_server.jar放入其中。比如,在桌面上創建一個名為「minecraft_server」的文件夾,然後把.jar文件拖進去。
  • 打開「文本編輯」,設定格式為純文本(格式 > 製作純文本),然後複製下面的內容到編輯器中:
#!/bin/bash
cd "$(dirname "$0")"
exec java -Xmx1G -Xms1G -jar minecraft_server.jar
  • 保存文件到.jar所在的目錄並重命名為"start.command"。
    • 這個就可以給伺服器端足夠的內存來運行。佔用內存總數可以通過改變文本中的 1G 來實現,比如把它改成 2G,那麼你的伺服器就會用2G的內存來運行。
  • 打開「終端」(在/應用程序/實用工具/終端)。
  • 給予該可執行文件運行許可權給用戶,組和公共。來完成這部,在終端中輸入 chmod a+x ,別忘了後面有個空格;然後拖 start.command 文件到終端窗口中,然後按下回車鍵。 (這就給了該腳本運行許可權。)
  • 請記得在開啟start前請更改eula.txt 裡頭的 false 改成true。
  • 雙擊start.command來運行伺服器端程序。
  • 一個新的終端窗口會打開,但你第一次運行該腳本時,會出現很多錯誤信息,提示你一些文件(files/directories)無法找到。這是正常的。現在你可以開始配置你的伺服器了。

[編輯] 作為後台進程運行

你也可以讓伺服器程序在系統開機後自動後台運行。

創建Mac OSX開機自動後台運行程序

[編輯] Linux 設置指南

本章教學部分是給那些對Linux系統不太了解的用戶們準備的。在論壇上,有一個更進階的教程。 這個教程在32位的Ubuntu 9.10操作系統上測試通過,不過也應該可以適用與其他基於Debian的操作系統。

[編輯] 下載

確保你有最新的伺服器端程序。請前去官方下載頁面下載。

[編輯] 安裝Java

如果你的系統沒有安裝Java或者Java版本低於1.6,請你安裝或更新你的Java。 我們推薦你去Sun公司官網上下載Java。有許多人反映安裝有OpenJDK會造成影響,所以我們建議你在安裝官方Java環境之前,移除OpenJDK。

然而,編譯安裝的OpenJDK常常性能更高(對於-Os -march=native -mtune=native來說,一些情況下不用編譯安裝性能也可能更高……),儘管OpenJDK不被Mojang技術支持。因此我們推薦在openjdk工作正常時不去額外安裝Sun Java。

[編輯] Debian

確保非自由軟體庫正被apt掃描到。將non-free加入你的/etc/apt/sources.list文件。e.g:

deb http://ftp.uk.debian.org/debian/ squeeze main non-free

以root身份更新你的軟體列表: apt-get update

然後簡單地以root身份將以下命令輸入終端並回車來安裝Java: apt-get install sun-java6-jre

[編輯] Ubuntu

對於 Ubuntu 10.04 LTS及更高版本, sun-java6 安裝包已經從Ubuntu的Multiverse中刪除. 你需要手動添加一下代碼:

  • 對於 Ubuntu 10.04 LTS (Lucid Lynx):

sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"

  • 對於 Ubuntu 10.10 (Maverick Meerkat):

sudo add-apt-repository "deb http://archive.canonical.com/ maverick partner"

  • 對於 Ubuntu 11.04 (Natty Narwhal):

Some distros have the command "add-apt-repository" removed. If this is the case, you will need to add the python properties by running the following command:
sudo apt-get install python-software-properties
Then you can proceed to add the source:
sudo add-apt-repository "deb http://archive.canonical.com/ubuntu natty partner"

  • 對於 Ubuntu 11.10 (Oneiric Ocelot):

sudo add-apt-repository ppa:ferramroberto/java

  • Then install the packages:

sudo apt-get update
sudo apt-get install sun-java6-jre
sudo update-alternatives --config java

  • 對於 Ubuntu 12.10 (Quantal Quetzal):

注意:你可能需要安裝 software-properties-common 套件以執行 apt-add-repository 指令,用法如下:
sudo apt-get install software-properties-common
輸入下列指令以加入 PPA 庫,並更新來源列表列表安裝 java:
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

安裝完成後,輸入下列指令並查看是否出現 java 版本號以確認JAVA是否正確安裝:
java -version
輸出結果類似如下(以版本號 1.7.0 Update 10 為例):
java version "1.7.0_10"
Java(TM) SE Runtime Environment (build 1.7.0_10-b18)
Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)

更多安裝 Java7 與 Ubuntu 的諮詢或問題排除,請參閱 webupd8s

[編輯] openSUSE

Use zypper in java-1_6_0-sun

[編輯] Arch Linux

打開一個終端並以root身份運行pacman -Syu openjdk6

[編輯] 其他發行版

作為另一種選擇,你可以直接訪問Java主頁下載Linux的Java包。許多發行版可以使用這種方式(32位、64位都適用)。在網頁中,有這些包的安裝指南。

如果在安裝過程中提示需要密碼,請輸入你的密碼。如果出現「是否確認?」,按「確定」,如果需要的話再按下回車。Java就裝好了。

[編輯] 啟動Minecraft伺服器

打開命令列模式(terminal),從「所有程序」>「附屬應用程序」>「命令提示字元」。
輸入下列指令:

cd 'minecraft_server'

您可能需要重新命名 minecraft_server 改成您所解壓縮到的文件夾名稱

java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui

[編輯] 當少於1GB可用的內存時

若您的RAM少於1024MB,下列的指令可能會導致虛擬內存不斷地交換分頁而最終內存用盡,這會使得遊戲更難以運行 cd 'minecraft_server' java-Xms1024M-Xmx1024M-jar minecraft_server.jar nogui

測量您目前所有可用的RAM: free -m It may look like this: File:ram left.png You are interested in the last number in the third line, 2163 in this case free-m

Subtract some RAM as safety

On this computer, the server may use up to 1536 MB RAM

Now, replace the 1024 in the above example with the calculated number: java -Xms1536M -Xmx1536M -jar minecraft_server.jar nogui if minecraft_server.exe is being used you use: java -Xms1536M -Xmx1536M -jar minecraft_server.exe nogui Voila, it should run smoothly now

Tip: If you want to spare more memory, you may set the -Xms parameter even lower, say: java -Xms32M -Xmx512M -jar minecraft_server.jar nogui The parameter controls how much memory is reserved on startup

Your server will start with 32MB RAM and whenever it needs more memory it will allocate some until it reaches the maximum of 512 MB

However, this will result in a little slowdown whenever the allocation is done.

[編輯] Startup and maintenance script

Alternatively you can automate the startup of the Minecraft server.

Server startup script

M3tal_Warrior Server Startup Script

[編輯] Configure and connect

Now it is time to configure and connect.

[編輯] 配置Minecraft伺服器

  1. 通過修改 server.properties 文件來配置Minecraft伺服器, 這個文件的格式解釋在 這裡. 確保你在編輯的時候使用的文本編輯器不會添加各種格式 (比如,斜體). 額外的配置並不是很有必要,因為大多數的伺服器使用默認配置就能很好的運行
  2. 將您的用戶名加入到 admin.txt 和/或 ops.txt 文件中(新版本的Minecraft中可能沒有 admin.txt 文件).
    • Ops.txt 和admin.txt 決定了誰可以執行 伺服器指令. 換句話說, 管理員("op") 許可權允許你控制遊戲的某些方面 (例如, 傳送玩家).
    • Op 許可權也可以通過伺服器圖形界面給予: 輸入"op <username>" 後 <username> 就會自動被添加到 ops.txt 中.

[編輯] 連接到Minecraft伺服器

  • 如果你是在作為服務端的電腦上玩Minecraft,先選擇「多人遊戲」,輸入「localhost」或者是「127.0.0.1」,而不是你的IP地址。
    • 這是不推薦的。除非你有一個性能良好,內存大於4GB的電腦。(%50給伺服器,%10給客戶端,其餘的給系統)
  • 在你的區域網內的玩家可以通過內網ip來連接到你的伺服器. (因為玩家在區域網內,所以你不需要介面轉發)
  • 從Internet鏈接的玩家 (也就是,不在你的區域網中的玩家) 必須使用你的外部ip來鏈接. 你必須為這些從外部鏈接的玩家使用介面轉發。

[編輯] IP 地址注釋

  • 除非你為正在做伺服器的電腦設定一個靜態ip, 否則的話,內部ip地址是有可能改變的. 這會影響到介面轉發規則並使得它們失效。 不同的路由器有不同的設置靜態ip的方法。你可以從你的設備的說明書或者在線文檔中獲得更多的幫助。
  • 如果你有連接到你外部IP的玩家, 你應該明白如果你沒有從你的Internet服務商處獲得一個靜態IP,那麼你的外部IP是會變化的. 你可以使用類似MyWANIP的工具來定時的檢查你的外部IP。 你也可以在谷歌中搜索「my ip address」來顯示你的外部IP(譯者註:百度搜索「IP地址」更加方便)。此外,你可以嘗試使用DNS服務,這會允許你使用一個固定的域名,而不是動態的IP地址。不管你的外部IP地址是否改變,這個域名會指向你當前的外部IP地址(即,當你的外部IP改變時,DNS會自動更新) 。

[編輯] 服務端網路設置

  • 伺服器需要開啟防火牆相應埠(默認為25565)才能使服務端正常工作。
  • 確認網路設置正確並使用在線工具如You Get Signal確定服務端在國際互聯網的IP。測試埠應與服務端設置的埠一致(默認為25565), 測試時請啟動服務端

伺服器有可能會遭到惡意攻擊,在伺服器投入使用以前,請務必做好物理保護及數據備份工作,否則有可能會帶來經濟及精神上的損失。

[編輯] 針對使用家庭路由器的伺服器

  • 如果伺服器位於一個家庭路由器的區域網內,則需要在路由器設置相應的埠映射法則。
  • 關於埠映射的具體設置,可以訪問 portforward.com。從網站給出的列表中選擇你使用的路由器型號,網站將給出設置埠映射的相應步驟(有廣告,可跳過)。數據機、路由器等網路器材附帶的說明文件也可能包括了設置埠映射的相關信息。
    • 部分路由器提供了DMZ選項,與埠映射有同樣效果,但遭到攻擊的可能性相比使用埠映射更大(DMZ主機暴露在外網,不受路由器安全設置保護)。新手使用請諮詢熟悉的業內人士

[編輯] 針對使用動態IP的伺服器

  • 由於中國大陸大部分家庭用戶(部分伺服器代理的伺服器也沒有固定IP)使用ADSL或PPPoE等方式接入互聯網,此種情況下的伺服器無論通過路由器與否,IP地址是不定的。解決此問題可以使用動態DNS服務,屆時玩家只需要知道伺服器使用的域名即可連接到伺服器。
  • 請聯繫網路供應商(家庭用戶)或伺服器代理商確定正在使用的網路接入方式。
  • 使用動態DNS需要進行以下準備工作:
    • 獲得一個域名,可以從dot.tkOray等網站獲得免費域名,也可以支付一定費用註冊;
    • 選擇一個動態DNS服務商,註冊賬號並按服務商提供的操作方法設置伺服器及域名,維基百科有部分動態DNS的服務商列表。

使用動態DNS需要一定網路理論及實踐的基礎,新手在做出決定前,請先諮詢熟悉的業內人士。

  • 設置動態DNS請按照服務商的指示對伺服器、路由器(僅限使用路由器的用戶)進行設置。
    • 路由器設置需要進入管理頁面進行操作,新手請參照說明文檔或在業內人士的指導下進行。

[編輯] 常見問題

1) 我連接時伺服器返回這樣的信息:

                       Connection lost 
        The server responded with an invalid server key

解決方法: 稍後再重新連接,如果重試多遍問題依舊,將伺服器升級到至少1.0.1(1.0.1也稱1.1)以上。


2) 我在Windows系統下雙擊了伺服器啟動的批處理文件,命令提示符窗口只閃現一下而伺服器沒有啟動,應該怎麼辦?

解決方法:可能是javaw.exe的路徑沒有設置對。把批處理文件路徑里的/jre7/換成/jre6/,確定運行環境在/Program Files/里還是在/Program Files (x86)/里,或者根據自己電腦的情況對路徑進行相應調整。多說一句,運行服務端需要JRE運行環境,而不是瀏覽器里的java插件。


3) 提示「Failed to Bind to Port」錯誤。

解決方法: 可能是路由器埠映射設置有誤,確認路由器為Minecraft開放的埠(默認為25565)正確地映射到你的伺服器上。如果你的伺服器是直接接入網路的且網路服務商不開放你所設置的埠,將 server.properties文件中的server-port=25565中的「25565」改為其他可用埠號。

最好避免使用1024以下的埠,這些是在IANA(互聯網號碼分配局)註冊的,為重要服務預留的埠;另外因為安全原因,一些網路服務商還會屏蔽3306(MySQL伺服器默認使用)埠等。除此之外,49152-65535段埠屬於「動態埠」範圍,沒有被註冊佔用。如果不確定自己想用的埠是否被佔用,參閱TCP及UDP埠列表


4)我在Solaris/OpenSolaris下運行服務端時遇到了以下錯誤信息:

java.io.InterruptedIOException: Operation interrupted 
at java.net.SocketInputStream.socketRead0(Native Method) 
at java.net.SocketInputStream.read(SocketInputStream.jav解决方法:129) 
at java.net.SocketInputStream.read(SocketInputStream.jav解决方法:182) 
at java.io.FilterInputStream.read(FilterInputStream.jav解决方法:66) 
at gq.a(SourceFile:131) 
at ji.g(SourceFile:197) 
at ji.c(SourceFile:17) 
at oq.run(SourceFile:84) 
2011-05-31 16:57:26 [INFO] /:44673 lost connection

解決方法:只有Solaris系統在線程中斷連接時會發生這種異常,這種異常可以通過改變啟動命令來避免:

java -Xmx1024M -Xms32M -XX:-UseVMInterruptibleIO -XX:+UseConcMarkSweepGC \
 -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=$CPU_COUNT -XX:+AggressiveOpts\
 -jar minecraft.jar nogui

這樣的命令讓Java使用一種可中斷的IO棧來防止異常發生。


5)我沒法放置/破壞方塊!!

解決方法: 離出生點遠一些,除非你是伺服器的Op,否則你不能在出生點附近放置或破壞方塊。

[編輯] 性能優化

對於各類JDK(Oracle或Open)用戶,使用JDK的一些參數進行優化是可行的。以下參數在一定程度上優化了GC內存操作且利用了一些CPU指令集。

java -server -XX:-UseVMInterruptibleIO -XX:NewRatio=3 -XX:+UseStringCache -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=(CPU数量,UNIX-LIKE/Linux/*nix可使用$CPU_COUNT) -XX:+AggressiveOpts -XX:+UseFastAccessorMethods -XX:+UseBiasedLocking -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+CMSParallelRemarkEnabled -XX:MaxGCPauseMillis=50 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -XX:+UseAdaptiveSizePolicy -XX:+DisableExplicitGC -Xnoclassgc -oss4M -ss4M -XX:CMSInitiatingOccupancyFraction=60 -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=1 -XX:SoftRefLRUPolicyMSPerMB=2048-XX:UseSSE=(0/1/2/3/4,视CPU定)-XX:UseAVX=(0/1/2,视CPU定) -Xms1G -Xmx视情况 -jar <jar文件>

以上參數的部分設置可以自行修改。

[編輯] 其他教程

這裡有些別的設置Minecraft伺服器的教程

[編輯] 參考鏈接

  1. http://minecraft-zh.gamepedia.com/教程/架设服务器#.E6.B3.A8.E6.84.8F.E4.BA.8B.E9.A1.B9