[Tauri+vite+ts]关于tauri打包带自定义目录/文件的解决方案

本文介绍如何在Tauri项目中配置资源文件,通过编辑`tauri.conf.json`文件指定`bundle`下的`resources`路径,实现自定义资源文件的打包。特别需要注意的是,资源文件或目录最好放置在`src-tauri`目录下,否则打包时可能会出现问题。

参考icon-default.png?t=M666https://tauri.app/v1/api/config/#bundleconfig在src-tauri中找到tauri.conf.json文件

 在bundle下找到resources,里面填写要加入的目录或者文件地址

效果:

 
 注意!!!!文件最好放在src-tauri下

不然,他会原封不动的封入你写的地址;如:

App放在src目录下:

 

 

则安装出来的文件目录如图:

 其中        "../" 对应 "_up_"

# ===== 第一阶段:前端构建(使用稳定 Node LTS)===== FROM node:25-alpine AS frontend-builder WORKDIR /app # 复制 package 文件并安装依赖(利用缓存) COPY package*.json ./ RUN npm ci --only=production && npm cache clean --force # 单独安装 dev deps 用于构建(避免污染生产层) RUN npm install --only=dev && npm cache clean --force # 复制源码并构建 COPY . . RUN npm run build # 清理开发依赖(减小中间层体积) RUN rm -rf node_modules && \ npm ci # 仅保留生产依赖(虽然不运行,但保持干净) # ===== 第二阶段:Tauri 构建环境(精简 Rust + Debian bookworm)===== FROM rust:1.91-slim-bookworm AS tauri-builder ENV DEBIAN_FRONTEND=noninteractive # 配置清华源(slim 镜像无 sources.list) RUN rm -f /etc/apt/sources.list && \ echo 'deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib non-free' > /etc/apt/sources.list && \ echo 'deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free' >> /etc/apt/sources.list && \ echo 'deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib non-free' >> /etc/apt/sources.list && \ echo 'Acquire::ForceIPv4 "true";' > /etc/apt/apt.conf.d/99force-ipv4 && \ apt-get update && \ # 只安装必要构建工具(去掉 build-essential,手动选包) apt-get install -y \ curl \ wget \ libwebkit2gtk-4.1-dev \ libappindicator3-dev \ librsvg2-dev \ patchelf \ libssl-dev \ pkg-config \ gcc \ g++ \ make \ git \ && rm -rf /var/lib/apt/lists/* # 安装 tauri-cli RUN cargo install tauri-cli WORKDIR /app # 复制前端资源 COPY --from=frontend-builder /app/dist ./dist # 复制 Tauri 配置 COPY src-tauri ./src-tauri # 设置国内镜像加速 AppRun 下载(防止超时) ENV TAURI_CLI_APPIMAGE_APPRUN_URL="https://cdn.jsdelivr.net/gh/tauri-apps/binary-releases@apprun-old/AppRun-x86_64" # 构建 Release 二进制 RUN cd src-tauri && cargo build --release # 打包为多种格式(AppImage, deb, rpm 等) RUN cd src-tauri && cargo tauri bundle --bundles appimage,deb,rpm # ===== 第三阶段:产物提取(不是运行!而是导出构建结果)===== FROM scratch AS exporter # 导出所有生成的发布包 COPY --from=tauri-builder /app/src-tauri/target/release/bundle/appimage/*.AppImage /artifacts/ COPY --from=tauri-builder /app/src-tauri/target/release/bundle/deb/*.deb /artifacts/ COPY --from=tauri-builder /app/src-tauri/target/release/bundle/rpm/*.rpm /artifacts/ CMD ["echo", "Build completed. Bundles are in src-tauri/target/release/bundle/"] # 其他平台可加:msi (Windows), dmg (macOS) —— 需交叉编译支持 给我完整代码
11-03
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值