Linux上Flutter项目部署指南(以Web/桌面应用为例)
安装Flutter SDK
从Flutter官网下载Linux版SDK压缩包(如flutter_linux_x64-*.tar.xz),解压至指定目录(如~/flutter)。通过编辑~/.bashrc(或~/.zshrc)文件添加环境变量:export PATH="$PATH:$HOME/flutter/bin",运行source ~/.bashrc使配置生效。
安装依赖项
Flutter项目需要系统依赖支持,执行以下命令安装(以Debian/CentOS为例):
sudo apt install git wget unzip libgl1-mesa-dev libgconf-2-4 libnss3 libxss1 libasound2 libcups2 libxtst6 libx11-xcb1 libgtk-3-0sudo yum groupinstall "Development Tools" && sudo yum install epel-release && sudo yum install mesa-libGL-devel libXtst-devel libXrandr-devel cups-devel libXcursor-devel libXinerama-develflutter doctor,检查并解决缺失的依赖(如Android工具链、Dart SDK等)。构建Web静态文件
进入Flutter项目目录,执行以下命令生成Web端静态文件:
flutter pub get # 获取项目依赖
flutter build web # 输出至build/web目录
构建完成后,build/web目录将包含index.html、JavaScript/CSS文件及资源文件。
配置Web服务器(以Nginx为例)
sudo apt install nginx(Debian)或sudo yum install nginx(CentOS)。/etc/nginx/sites-available/flutter_app),添加以下内容(替换your-domain.com为域名/IP,/path/to/your/flutter/project/build/web为静态文件路径):server {
listen 80;
server_name your-domain.com;
root /path/to/your/flutter/project/build/web;
index index.html;
location / {
try_files $uri $uri/ /index.html; # 支持前端路由
}
}
sudo ln -s /etc/nginx/sites-available/flutter_app /etc/nginx/sites-enabled/,测试配置sudo nginx -t,重启Nginxsudo systemctl restart nginx。访问应用
浏览器输入服务器IP或域名,即可访问部署的Flutter Web应用。
构建桌面可执行文件
进入项目目录,执行flutter build linux,生成的可执行文件位于build/linux/x64/release/bundle/目录下(名为your_project_name)。
发布应用
linuxdeploy工具,执行linuxdeploy --appdir=./appdir --executable=./build/linux/x64/release/bundle/your_project_name --output=appimage,生成.AppImage文件。dpkg-deb(Debian)或rpmbuild(CentOS)工具,将可执行文件及依赖打包为安装包。sudo ufw allow 80),确保Nginx配置中的root路径正确。flutter doctor查看红色警告,按提示安装缺失的库(如libgtk-3-dev)。ldd ./your_project_name检查动态库依赖。