Skip to content

简介 ​

运行环境模块,提供应用运行时的全局状态变量和工具函数。包括版本号、环境标识、应用名称、平台类型、目录路径、HTTP 服务状态等全局信息,以及环境检测和路径获取函数。

导入 ​

go
import "github.com/wallace5303/ee-go/eruntime"

API ​

Version ​

说明:框架版本号,默认值为 "0.1.0"。

类型:string

ENV ​

说明:运行环境标识,值为 "dev" 或 "prod",默认值为 "dev"。

类型:string

AppName ​

说明:应用名称,默认为空字符串,由业务代码在启动时赋值。

类型:string

Platform ​

说明:客户端平台类型,值为 "pc"、"mobile" 或 "web",默认值为 "pc"。

类型:string

IsExiting ​

说明:表示应用是否正在退出,默认值为 false。任务模块在添加或执行任务时检查此标志;如果为 true,则跳过任务操作。

类型:bool

Debug ​

说明:是否启用调试模式,默认值为 false。

类型:bool

BaseDir ​

说明:应用根目录路径,通过 os.Getwd() 获取当前工作目录进行初始化。

类型:string

PublicDir ​

说明:静态资源目录路径,由 InitDir() 设置为 BaseDir + "/public"。

类型:string

UserHomeDir ​

说明:操作系统用户主目录路径。

类型:string

UserHomeConfDir ​

说明:操作系统用户主目录下的配置文件目录路径。

类型:string

UserHomeAppDir ​

说明:操作系统用户主目录下的应用数据目录路径。

类型:string

WorkDir ​

说明:应用工作目录路径。

类型:string

DataDir ​

说明:应用数据存储目录路径。

类型:string

TmpDir ​

说明:应用临时数据存储目录路径。

类型:string

Port ​

说明:HTTP 服务监听端口,默认值为 "0"(表示未设置)。

类型:string

SSL ​

说明:是否启用 SSL,默认值为 false。

类型:bool

HttpServerIsRunning ​

说明:HTTP 服务器是否正在运行,默认值为 false。

类型:bool

InitDir() ​

说明:初始化 PublicDir 目录路径,设置为 filepath.Join(BaseDir, "public")。应在应用启动早期调用。

返回值:无返回值

示例:

go
eruntime.InitDir()
fmt.Println(eruntime.PublicDir) // 输出: /path/to/app/public

IsProd() ​

说明:检查当前环境是否为生产环境,即 ENV == "prod"。

返回值:bool — 生产环境返回 true,否则返回 false

示例:

go
if eruntime.IsProd() {
    fmt.Println("以生产模式运行")
}

IsDev() ​

说明:检查当前环境是否为开发环境,即 ENV == "dev"。

返回值:bool — 开发环境返回 true,否则返回 false

示例:

go
if eruntime.IsDev() {
    fmt.Println("以开发模式运行")
}

IsDebug() ​

说明:检查是否启用调试模式,即 Debug 的值。

返回值:bool — 启用调试返回 true,否则返回 false

示例:

go
if eruntime.IsDebug() {
    fmt.Println("调试模式已启用")
}

Pwd() ​

说明:获取当前可执行文件所在目录的绝对路径。通过 exec.LookPath 定位可执行文件,通过 filepath.Abs 获取绝对路径,最终返回其父目录。

返回值:string — 可执行文件所在目录的绝对路径

示例:

go
dir := eruntime.Pwd()
fmt.Println("可执行文件目录:", dir)