專案簡介
Halo 是一個優秀的開源博客發布應用,在 GitHub 上廣受好評,正好最近在練習寫博客,借此記錄一下學習 Halo 的程序,
專案下載
從 GitHub 上拉取專案原始碼,Halo 從 1.4.3 開始,最低支持的 JRE 版本為 11,本人下載的是 1.4.13 版本,
前提設定
匯入專案
因為 Halo 使用 Gradle 構建,所以在 idea 中匯入 Gradle 專案,與 Maven 不同,Gradle 專案的依賴在 build.gradle 中添加,
Halo 中主要使用了如下依賴:
- Spring Boot:一個用來簡化 Spring 的搭建和開發程序的全新框架;
- Spring Data JPA:持久層框架;
- Spring Web:構建 Web 應用;
- Undertow:高性能 Web 容器;
- Freemarker:模板引擎;
- H2 Database:嵌入式資料庫,無需安裝;
- MySQL:關系型資料庫;
- Lombok:Java 高效開發工具;
- Swagger:生成介面檔案;
- Hutool:開源 Java 工具類;
- 七牛云:云存盤服務器;
- 阿里云 OSS:提供海量、安全、低成本、高可靠的云存盤服務;
- Flexmark:將 Markdown 轉化為 HTML,
ieda 設定
Halo 使用的是 JDK 11,所以需要將 idea 中的 JDK 版本設定成 JDK 11,依次點擊 File -> Project Structure -> Project SDK 設定 JDK,
Gradle 也需要設定為 JDK 11,依次點擊 File -> Settings -> 搜索 Gradle 設定 JDK,
啟動專案
注意事項
專案啟動前請做好如下準備:
- 確保 JDK 的版本符合要求,本文使用 JDK 11;
- 確保所有的依賴都正常匯入(本次實踐未發生例外);
- 確保 resources/templates/themes 目錄不為空,正常情況下應該有 anatole 檔案夾,為空是因為使用 Git 克隆時沒有克隆子模塊,可以在 Halo 官網的主題倉庫下載 Anatole 主題,解壓后重命名為 anatole,并復制到 themes 目錄下;
- Halo 默認使用 H2 Database,該資料庫無需安裝,因此可以直接啟動專案,如果希望使用 MySQL,則需要在 application.yaml 檔案中注釋掉 H2 Database 的配置,并添加 MySQL 的相關配置(資料庫名為 'halodb'):
# MySQL 配置
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: root
password: 123456
運行專案
點擊運行,專案正常啟動,控制臺列印了如下資訊:
上述資訊提示我們訪問 127.0.0.1:8090,首次訪問該頁面時,頁面會重定向到初始化頁面,用戶需要設定博主、博客的相關資訊,如用戶名、密碼等,
資訊填寫完畢后,點擊安裝,之后頁面會跳轉到登錄頁面,此時用戶可以使用之前設定的賬號和密碼進行登錄,登錄成功后進入 'Halo Dashboard' 頁面,且系統會自動創建一篇文章 'Hello Halo!','Halo Dashboard' 頁面是博客的后臺管理頁面,供管理員使用,訪問 127.0.0.1:8090/admin 時就會進入該頁面(需登錄),
博客的主頁可訪問 127.0.0.1:8090,在該頁面可看到博主發表的所有文章,
至此,Halo 專案在 idea 上啟動成功!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/460909.html
標籤:Java
