需要構建源碼传黄,除了需要JDK1.6或以上隘梨,還需要Maven舌菜,詳細教程可查看官方源碼構建手冊
一、使用命令行通過Maven構建
1. 從maven官網(wǎng)獲取Maven二進制包并解壓
$wget http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
$tar -zxvf apache-maven-3.5.2-bin.tar.gz
2. 修改環(huán)境變量
# /etc/profile最后加上
MAVEN_HOME=/opt/apache-maven-3.5.2
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
export MAVEN_OPTS=-Xmx1024m
# 使環(huán)境變量生效
$ source /etc/profile
3. 驗證是否成功
$ mvn -v
查看Maven版本
4. 獲取源碼
# 從官網(wǎng)獲取源碼
$ wget https://codeload.github.com/apache/james-project/tar.gz/james-project-3.0.1
# 解壓
$ tar -zxvf james-project-3.0.1
# 進入james
$ cd james-project-3.0.1/
5. 打包
$ mvn package -DskipTests=true -Pwith-assembly
構建成功
6. 常見問題
為了防止環(huán)境等問題造成編譯錯誤场梆,需要加上-DskipTests=true跳過測試
$ mvn clean install -DskipTests=true
二、通過Eclipse構建源碼并運行(推薦)
本人雖然是個Intellij IDEA擁護者纯路,也花了幾天時間用于IDEA運行James源碼或油,但是由于水平有限,沒能解決解決啟動時Spring無法注入依賴的問題感昼,最終也不得而終装哆,沒想到后來轉用了eclipse沒費許久時間便成功了,頓時郁悶定嗓,都是maven的結構蜕琴,想不通為何如此,希望使用IDEA成功的同學能私信我宵溅,為我指點迷津凌简,感激不盡!
本人參考的資料如下:
以下是本人的操作步驟:
1. 導入源碼
import
maven project
select all
目錄結構
2. 復制xml文件
將james-server-app/src/main/resources/下的 *-template.xml各復制一份為 *.xml恃逻,也可以通過bash腳本進行批量復制雏搂。
復制*-template.xml
3. 運行
將james-server-app/src/main/java/org/apache/james/app/spring/JamesAppSpringMain.java以Java Application運行
運行
結果
4. 打包
使用maven打包
- Goals: clean package -DskipTests=true -Pwith-assembly
打包
success
壓縮包
三藕施、通過IDEA打包(運行未實現(xiàn))
1. 導入源碼
導入源碼
目錄結構
2. 創(chuàng)建Maven
edit
添加maven
配置maven
- Working directory: 選擇james/server目錄
- Command line: package -DskipTests=true -Pwith-assembly
3. 運行結果
運行
打包成功
執(zhí)行成功后,會在 server/app/target/ 目錄下生成可運行的文件
目標文件
將 james-server-app-3.0.1-app.zip 解壓凸郑,可參考《James部署及簡單使用》 所描述的方式跑通裳食。
目錄結構