### 下載框架
> 我將使用發布的最新穩定版(apache-ofbiz-16.11.04.zip)來完成本書的教學,
> 下載后解壓的根目錄名稱為(ofbizr-xpp1611), 后續教程都將以此為基礎.
> 具體版本選擇與下載網址請看[**獲取框架**](獲取框架.md)章節.
### 選擇IDE
> Java專用工具目前主流的是Eclipse和IDEA
> - Eclipse: 免費, 功能齊全, 插件眾多, 是免費IDE中的首推工具
> - IDEA: 收費且昂貴, 請和諧使用, 功能齊全, 插件豐富, 是收費IDE中首推工具
### 使用IDEA開發OFBiz
> 本人是蘋果電腦, 所以本教程將基于Mac操作系統使用IDEA做具體講解
#### 1. 打開IDEA應用, 到應用工作臺, 已導入項目列表, 如下圖

#### 2. 選擇已下載的框架解壓后的根目錄, 我的(ofbizr-xpp1611), 選擇Gradle模式, 下一步

>[warning] 注意: 若是低版本的項目(如v13.07), 因為是Ant腳本構建的, 這里就選擇**Eclipse**模式, 而并非是Gradle模式
#### 3. 這個界面是項目的基本配置, 設置如下圖

>[warning] 注意:
> - Gradle: 因為項目自帶Gradle運行庫, 這里選擇使用默認的, 不適用操作系統已安裝的
> - Java_JDK: 在[開發環境](開發環境.md)章節有介紹, ofbiz_v16.11版本使用的JDK最低要求是 jdk_v1.8, 所以這里選擇 1.8
> - ipr文件: IDEA默認在項目根目錄添加其專屬配置文件, 但是有兩種存放配置文件的方式, 一種是將配置文件存到一個文件夾(.idea)里, 一種是將文件存入(.ipr)文件內, 為了方便查閱和調整IDEA的配置, 且容易定位待改配置項, 我們選擇(.ipr)方式.
#### 4. 上一步, 點擊(Finish)按鈕后, 等待IDEA載入項目, 成功導入結果如下圖

>[warning] 注意:
> - 導入過程因電腦配置會有快慢, 請耐心等待
> - 最慢的是為項目建立索引的過程, 你將會在IDEA的右下角看到一個進度條在緩慢的遞進
> - 導入結束后, Gradle插件功能窗口將自動彈出, 如下圖, 請點擊箭頭處方塊停止Gradle的自動編譯, 稍后我將在講解[配置運行](配置運行.md)時介紹

#### 5. 至此, 項目導入IDEA開發工具完成.
### 使用Eclipse開發OFBiz
> 鑒于新版本的OFBiz使用的編譯腳本從Ant更新為Gradle了,
> 而Eclipse的默認環境又不支持Gradle項目(安裝請看[為Eclipse安裝Gradle環境](為Eclipse安裝Gradle環境.md)),
> 應網友要求, 特為此版本編寫Eclipse開發的導入教程.
>
#### 1. 打開Eclipse到應用工作臺, 準備導入項目

#### 2. 點擊[Import...]按鈕后打開導入窗口, 選擇導入已存在項目

#### 3. [Browse...]選擇項目所在根目錄, 點擊[Finish]完成

#### 4. 至此, OFBiz項目導入完成
> 若導入后報**UnsupportedConfigurationException**異常, 請看[解決Gradle項目導入Eclipse后拋出UnsupportedConfigurationException異常](解決Gradle項目導入Eclipse后拋出UnsupportedConfigurationException異常.md).
> 若導入后大量的**src**目錄都報錯, 請看[Gradle項目在Eclipse中自動鏈接依賴的jar包](Gradle項目在Eclipse中自動鏈接依賴的jar包.md).
>[warning] 注意:
> - 若導入的是Gradle版本的OFBiz, 建議優先[為Eclipse安裝Gradle環境](為Eclipse安裝Gradle環境.md)
> - 導入過程因電腦配置會有快慢, 請耐心等待.
> - 導入后可能會拋出第4步發生的問題, 請按解決方案嘗試解決,
> - 若有問題請聯系我或留言.
- OFBiz開發手冊
- 關于
- 更新日志
- 快速引導
- 關于本書
- 關于作者
- 認知篇
- 認識OFBiz
- 什么是OFBiz
- 架構圖析
- 依賴庫
- 請求核心流程
- 獲取框架
- 衍生項目
- OFBiz的特點
- 框架特性
- 業務能力
- 框架優勢
- 框架劣勢
- 行業解決方案
- 架構對比
- OFBiz適應癥
- 適合我嗎
- OFBiz中國
- 中國業界
- 優秀博客
- 基礎篇
- 開發準備
- 操作系統
- 開發環境
- 框架導入IDE
- 配置運行
- 創建模塊
- 模塊介紹
- 模塊結構
- 模塊創建
- 模塊載入訪問
- 標準CRUD
- 文件關系
- 實體設計-Entity
- 國際化-UiLabel
- 配置菜單-Menu
- 配置請求-Controller
- 配置屏幕-Screen
- 配置表單-Form
- 配置服務-Service
- 配置業務腳本-Minilang
- 測試CRUD
- 基礎進階
- 中文環境配置
- 通用搜索服務
- 文件上傳
- Form表單驗證
- 導出PDF
- 導出Excel
- 發送Email
- 配置Job
- 配置視圖-view-entity
- 動態請求-ajax
- 常用功能
- 加速Gradle
- 常用命令
- 修改端口
- 調試模式
- 調試項目
- 重啟生效
- 數據導入
- 緩存清理
- 在線日志
- 更換數據庫
- 實體設計管理
- 表數據管理
- 配置本地dtd
- 使用Static靜態文件
- 驗證碼-RandomCode
- 主題切換-Theme
- 時區切換-TimeZone
- 語種切換-Language
- webtools在線框架管理功能介紹
- 編碼規范
- 駝峰命名法
- 代碼編碼規范
- 實體設計規范
- 字段類型規范
- 請求命名規范
- 業務實現規范
- 提高篇
- 環境上下文
- 上下文-ftl
- 上下文-groovy
- 上下文-event
- 上下文-form
- 上下文-screen
- 上下文-minilang
- 標簽API
- 實體設計-entitymodel
- 實體觸發器-eeca
- 國際化-UiLabel
- 菜單-Menu
- 請求-Controller
- 屏幕-Screen
- 表單-Form
- 服務-Service
- 服務觸發器-seca
- 腳本-Minilang
- 腳本-Groovy
- 模板-Freemarker
- 演示數據-Data
- PDF標簽-XSL-FO
- 工具類
- 調試-Debug.java
- 對象類型-ObjectType.java
- 字符串工具-StringUtil.java
- 日期時間-UtilDateTime.java
- 通用-UtilGenerics.java
- Http-UtilHttp.java
- 綜合-UtilMisc.java
- 屬性-UtilProperties.java
- URL-UtilURL.java
- 校驗-UtilValidate.java
- XML操作-UtilXml.java
- 高級實現
- 忽略版本控制
- 配置項目使用MySQL數據庫
- 配置項目使用Postgres數據庫
- 擴展支付寶支付
- Webservice公共服務
- Rest接口
- Ftl自定義宏與使用
- 接入條形碼
- 接入二維碼
- 自定義主題-Theme
- error頁面自定義
- 接入SMS手機短信服務
- QQ微信聯合登錄
- 微信服務號接管
- 頁面靜態化
- CMS幫助中心
- 訪客IP與城市定位
- 使用二級域名
- Tenant多租戶應用
- date-time中國化顯示
- datepicker日期控件
- 圖片處理
- SSL安全證書
- 接入workflow
- 使用solr搜索引擎
- 生產服務器性能優化
- 框架篇
- 框架模塊
- 模塊關系
- 框架基礎-base
- 通用功能-common
- 運行容器-catalina
- 實體引擎-entity
- 靜態資源-images
- XML腳本-minilang
- 用戶權限-security
- 服務引擎-service
- 項目啟動-start
- 測試工具-testtools
- 應用站點-webapp
- 在線框架管理-webtools
- 裝飾器-widget
- 核心類
- 請求核心類
- 實體核心類
- 服務核心類
- 框架原理
- Start啟動過程
- 實體引擎
- 請求控制
- 服務引擎
- ECA觸發器
- 實體主鍵生成器
- Job定時任務
- 跨模塊免登陸訪問
- 無處不在的UEL表達式
- cache緩存的實現
- minilang原理
- 實體相關資源加載模式
- OFBiz支持的模塊目錄
- OFBiz請求處理過程分析
- 權限
- 權限介紹
- 權限分布
- 權限運用
- 重要文件
- 模塊加載component-load.xml
- 模塊配置ofbiz-component.xml
- 站點配置web.xml
- 緩存cache.properties
- 調試debug.properties
- 綜合配置general.properties
- 二維碼qrcode.properties
- 安全security.properties
- 服務端統計serverstats.properties
- 啟動配置start.properties
- 網絡訪問配置url.properties
- 裝飾器配置widget.properties
- 業務篇
- 業務模塊
- 業務介紹
- 模塊關系
- 內容-content
- 當事人-party
- 人事-humanres
- 商品-product
- 跟進-marketing
- 訂單-order
- 制造-manufacturing
- 人工服務-workeffort
- 財務-accounting
- 行業解決方案
- 電商綜合應用
- 運維篇
- 運行環境
- 服務器硬件要求
- Linux服務器初始化
- JDK安裝與配置
- MySQL安裝與配置
- SVN客戶端安裝
- Nginx安裝與配置
- 項目部署
- 項目父目錄
- 修改端口
- 一個服務器運行多個項目實例
- 運行項目
- 常用命令
- 番外篇
- 進階技巧
- 標準CRUD完整模板
- 參考書目與簡介
- 數據模型資源手冊
- Freemarker語法
- Freemarker介紹
- Groovy語法
- Groovy介紹
- Groovy比之Java
- OFBiz中的Groovy增強
- 常見問題
- Ftl中文亂碼
- PDF中文亂碼
- 數據庫中文亂碼
- Console中文亂碼
- 下載文件亂碼
- http鏈接存數據庫異常
- html代碼存數據庫異常
- OFBiz框架精簡
- OFBiz_v16.11初始化好慢 為什么?
- 怎么查看自己的項目基于OFBiz的哪個版本
- IDEA里Gradle執行命令時提示 No cached version available for offline mode 錯誤
- OFBiz為什么可以下載了就能直接運行起來用?
- 用IDEA手工執行Gradle指令
- 不允許你瀏覽這個頁面
- 使用[loadDefault]或[load-demo]指令到底加載了哪些實體和數據
- OFBiz中怎么手工導入Data.xml數據
- 怎么確認一個用戶是否配置并授予了某個權限
- 哪些情況下需要重啟OFBiz系統
- 如何清空緩存呢?
- MySQL或PostSQL等數據庫時,更新一個實體字段類型,重啟OFBiz并沒有生效,為什么?
- 實體添加字段,重啟在數據庫沒看到此字段,為什么?
- Gradle項目在Eclipse中自動鏈接依賴的jar包
- 解決Gradle項目導入Eclipse后拋出UnsupportedConfigurationException異常
- 為Eclipse安裝Gradle環境
- Eclipse配置顯示工具窗口
- 用Eclipse手工執行Gradle指令
- 回答問題
- 看云使用小記