You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
docs/versioned_docs/version-1.6/developer-guide/core/structure.md

2.5 KiB

title description
系统结构 Halo 项目的构成

Halo 博客系统分为以下四个部分:

项目名称 简介
halo 提供整个系统的服务,采用 Spring Boot 开发
halo-admin 负责后台管理的渲染,采用 Vue 开发,已集成在 Halo 运行包内,无需独立部署。
halo-comment 评论插件,采用 Vue 开发,在主题中运行方式引入构建好的 JavaScript 文件即可
halo-theme-* 主题项目集,采用 FreeMarker 模板引擎编写,需要包含一些特殊的配置才能够被 halo 所使用

自定义配置

为什么要提前讲自定义配置呢?是因为在这里让大家了解到 Halo配置方式,以及配置优先级,不至于未来运行项目的时候不知道如何优雅地修改配置。

Halo 配置目录优先级如下(从上到下优先级越来越小,上层的配置将会覆盖下层):

  • Halo 自定义配置
    • file:~/.halo/
    • file:~/.halo-dev/
  • Spring Boot 默认配置
    • file:./config/
    • file:./
    • classpath:/config/
    • classpath:/

参考: Application Property Files

在开发的时候,希望大家能够在 ~/halo-dev/application.yml 中进行添加自定义配置。当然后面也会讲到如何用运行参数VM options 进行控制配置,届时可根据具体情况进行选择。

:::warning 开发的时候,我们不建议直接更改项目源码中的所包含的配置文件,包括 application.ymlapplication-dev.ymlapplication-test.ymlapplication-user.yml。 :::