下載openfire 4.3.2源碼解壓後的目錄如下:
IDEA導入項目,等待sync完成。可能是因爲網絡的原因,有個plugin一直下載不下來,本地有該plugin
其他版本,於是改了下pom文件,sync項目成功。
cd到項目根目錄,根據documentation文件夾下的source-build.html文件構建源碼。我執行mvn test的時候有個關於surefire plugin的error,原因maven版本太低,使用3.6以上的版本就可解決這個問題。
打包完成後,windows下執行distribution\target\distribution-base\bin\openfire.bat即可啓動openfire。瀏覽器輸入http://localhost:9090完成相關配置。
啓動成功之後想到了這樣不能debug, 那麼如何debug openfire源碼呢? (Refer to https://discourse.igniterealtime.org/t/how-to-debug-plugin-in-openfire-4-3-2/85625)
如何debug:
IDEA: Edit Configuration -> Add Application.
1. 添加MainClass:ServerStarter
2. Working directory: 就是項目的根目錄。
3. VM Options: 有幾個參數:
openfireHome: distribution module, target 文件加下distribution-base目錄, 也就是啓動的根目錄,後面的參數都是基於這個路徑。
log4j.configurationFile:log配置文件的路徑。
openfire.lib.dir:依賴包路徑。
-DopenfireHome="D:\IDEAProjects\Openfire-4.3.2\distribution\target\distribution-base" -Dlog4j.configurationFile="D:\IDEAProjects\Openfire-4.3.2\distribution\target\distribution-base\lib\log4j2.xml" -Dopenfire.lib.dir="\IDEAProjects\Openfire-4.3.2\distribution\target\distribution-base\lib" -jar "\IDEAProjects\Openfire-4.3.2\distribution\target\distribution-base\lib\startup.jar"
配置完成後 debug運行即可。