Linux下Flutter项目如何部署
一、环境准备(Linux系统)
-
安装Flutter SDK
- 下载最新稳定版Flutter SDK:
wget https://storage.googleapis.com/flutter-release/releases/stable/flutter-linux-x64-< version> .tar.xz(替换< version>为实际版本号)。 - 解压到指定目录(如
~/flutter):tar -xvzf flutter-linux-x64-< version> .tar.xz -C ~/flutter。 - 配置环境变量:编辑
~/.bashrc,添加export PATH="$HOME/flutter/bin:$PATH",执行source ~/.bashrc使配置生效。 - 验证安装:运行
flutter doctor,根据提示安装缺失依赖(如Android工具链、iOS工具链等,仅桌面部署可忽略移动端依赖)。
- 下载最新稳定版Flutter SDK:
-
安装桌面平台依赖
- 运行
flutter config --enable-linux-desktop启用Linux桌面支持。 - 安装Linux桌面开发库:
sudo apt install -y libgl1-mesa-dev libgconf-2-4 libnss3 libxss1 libasound2 libcups2 libxtst6 libx11-xcb1 libgtk-3-0(不同发行版包名可能略有差异)。
- 运行
二、项目配置
-
添加桌面平台支持
编辑项目根目录的pubspec.yaml文件,在flutter节点下添加desktop配置:flutter: desktop: - linux # 启用Linux平台支持保存后运行
flutter pub get同步依赖。 -
配置应用图标(可选)
- 安装
flutter_launcher_icons插件:flutter pub add flutter_launcher_icons。 - 准备图标文件(如
assets/icons/icon.png),并在pubspec.yaml中配置图标路径:flutter_launcher_icons: linux_icon: "assets/icons/icon.png" # Linux平台图标路径 - 运行
flutter pub run flutter_launcher_icons:main生成桌面图标。
- 安装
三、构建Linux桌面应用
-
构建Release版本
进入项目目录,运行以下命令生成Linux桌面应用:flutter build linux --release构建完成后,输出文件位于
build/linux/x64/release/bundle/目录下,包含可执行文件(如your_app_name)及依赖资源。 -
本地测试运行
在项目目录下直接运行flutter run -d linux,或在构建目录中执行生成的可执行文件(如./build/linux/x64/release/bundle/your_app_name),验证应用功能是否正常。
四、打包与分发
-
生成Debian包(.deb)
- 安装打包工具:
sudo apt install -y flutter_build_debian。 - 在项目根目录创建
debian.yaml配置文件,指定包信息:flutter_app: command: your_app_name # 应用可执行文件名(与build目录下一致) arch: x64 # 架构(通常为x64) parent: /opt # 安装父目录(如/opt/your_app_name) nonInteractive: true # 是否静默安装(无需用户确认) control: package: your_app_name # 包名(如mega-cool-app) version: 1.0.0 # 版本号 depends: # 依赖库(根据项目需求添加,如libgtk-3-0) - libgtk-3-0 - libgconf-2-4 - 运行
flutter pub run flutter_build_debian生成.deb文件(位于build/debian/目录下)。
- 安装打包工具:
-
分发与应用
- 将生成的
.deb文件分发给用户,用户可通过以下命令安装:sudo dpkg -i your_app_name_1.0.0_amd64.deb - 若安装过程中提示依赖缺失,运行
sudo apt --fix-broken install自动解决依赖问题。
- 将生成的
五、部署到服务器(Web应用) 若需部署Flutter Web应用到Linux服务器(如Nginx),需额外执行以下步骤:
-
构建Web静态文件
运行flutter build web,生成build/web/目录下的静态文件(HTML、CSS、JS等)。 -
上传文件到服务器
使用scp或rsync将build/web/目录上传至服务器指定路径(如/var/www/html/your_app):scp -r build/web/* user@server_ip:/var/www/html/your_app -
配置Web服务器(以Nginx为例)
- 安装Nginx:
sudo apt install -y nginx。 - 创建配置文件(如
/etc/nginx/sites-available/your_app),添加以下内容:server { listen 80; server_name your_domain.com; # 替换为域名或IP root /var/www/html/your_app; # 静态文件路径 index index.html; location / { try_files $uri $uri/ /index.html; # 支持前端路由 } } - 启用配置:
sudo ln -s /etc/nginx/sites-available/your_app /etc/nginx/sites-enabled/。 - 测试配置并重启Nginx:
sudo nginx -t & & sudo systemctl restart nginx。
- 安装Nginx:
-
访问应用
在浏览器中输入服务器域名或IP(如http://your_domain.com),即可访问部署的Flutter Web应用。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux下Flutter项目如何部署
本文地址: https://pptw.com/jishu/747136.html
