1、下載下傳源碼openfire_src_3_9_3.zip,目前最新的版本是3.9.3
2、把下載下傳好的openfire_src_3_9_3.zip解壓到工作空間,結構和目錄如下:

3、把openfire_src\build\eclipse目錄下面的settings、classpath、project全部複制到openfire_src\目錄下,然後把openfire_src\classpth、openfire_src\project、openfire_src\settings修改成Eclipse工程配置檔案格式,重命名為在每個原有的名字上加上一個點,即.classpth、.project、.settings。注意:在windows下面不能直接重命名,需要在dos下面操作,即進入相應的目錄執行,rename classpth.classpth即可,其它兩個檔案執行一樣的操作:
4、然後打開Eclipse,選擇 File –> Import…openfire_src導入即可:
導入後目錄結構如下:
大家會發現自己這個項目上出現了一個感歎号,進入建構路徑,會發現:
這說明這個jar包缺失了,選中這個檔案,然後點選右邊的Remove按鈕,将其移除,當然,我們也可以去網上下載下傳一個,點選右邊的AddJARs...将其加上,不過我沒加也沒出現問題
移除後出現三個錯誤,沒關系,我們一步步修複錯誤,\openfire_src\src\java報錯,是因為有jar包,沒有引進來,我們将其引進即可:
注意:一次隻能引用一個,是以需要操作四次,才行。點選OK以後,我們發現\openfire_src\src\java上的錯誤已經沒有了。
\openfire_src\src\plugins\clustering\src\java報錯,是因為缺少coherence.jar,coherence-work.jar,tangosol.jar這三個jar包,我們将複制到\openfire_src\build\lib目錄下,然後将這三個jar包,加入建構路徑:
這時我們發現\openfire_src\src\plugins\clustering\src\java上的錯誤已經消失了,這裡我提供一下這三個jar包的下載下傳位址,http://download.csdn.net/detail/u013947002/8153483,當然,你也可以去其它地方下載下傳。
最後一個在\openfire_src\src\plugins\sip\src\java上的報錯是因為 SipCommRouter.java和SipManager.java這兩個類沒有實作抽象方法和完成異常處理,最簡單的解決辦法是利用Eclipse自動修複功能進行修複即可。現在我們發現我們的項目已經沒有任何錯誤了。
5、ANT編譯項目
Eclipse已經內建了Ant,是以我們隻需要在 /openfire_src/build/build.xml 檔案右擊,選擇Run As –> Ant Build即可完成編譯,程式設計成功後,會在/openfire_src/的跟目錄下生成兩個新的檔案夾:target和 work。(JAVAHOME需要配置正确,這裡就不多說了)
6、運作Openfire項目
①、在Build Path配置中把 /openfire_src/src/i18n、/openfire_src/src/resources/jar、/openfire_src/build/lib/dist檔案夾添加到 Source 中,如圖:
②配置啟動參數
選擇Run –> RunConfigurations…左邊的Java Application,單擊右鍵,選擇 New:
把預設name:New_configuration修改成:ServerStarter;
選中Main頁籤,點選Browse按鈕選擇 openfire_src 項目;單擊Search按鈕輸入:ServerStarter自動過濾後選擇:ServerStarter– org.jivesoftware.openfire.starter:
選中Arguments頁籤,在VM arguments
中填入:-DopenfireHome="${workspace_loc:openfire_src}/target/openfire"
注意:項目路徑 ${workspace_loc:openfire_src}
選中Common頁籤,将Debug和Run打鈎(友善之後快速啟動),然後點選apply,再點選run:
③運作後控制台日志如下:
④浏覽器中輸入位址:http://127.0.0.1:9090回車:
6、選擇中文,然後繼續。伺服器設定可直接跳過。資料庫設定選擇标準資料庫連接配接,點選繼續
7、在資料庫設定-标準連接配接設定界面,選擇資料庫驅動mysql,更改資料庫url,其中需要更改的有伺服器ip位址,還有資料庫名,建議單獨建立一個名為openfire的資料庫。輸入資料庫管理者的賬号和密碼,下一步。
8、資料庫連接配接成功後界面,直接點選繼續。
9、管理者賬戶設定界面,輸入管理者的郵箱位址,還有管理者的賬号的密碼,初始賬号為admin。
10、完成設定,登入到管理控制台,初始賬戶名admin密碼為上一步設定的密碼。
11、登陸成功後顯示
12、檢測伺服器是否配置成功,到http://www.igniterealtime.org/downloads/index.jsp下載下傳Spark
13、安裝Spark,一路next,然後finish。運作Spark,建立Spark賬号
32、使用建立的賬号登陸Spark,登陸成功可在Openfire管理控制台的使用者組看到新注冊的使用者和線上狀态
到這裡服務端算是結束了,接下來就是android端了,android就是用xmpp實作了發送消息,注意把ImManager類的ip改為自己的伺服器的ip,這樣就可以跑起來了,androidim demo:http://download.csdn.net/detail/u013947002/8153531
初學者,大神請指教