You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何减少OpenUI5项目UI5构建输出中的未使用文件数量?

解决OpenUI5构建输出包含未使用组件文件的问题

方法1:启用自动依赖树分析(推荐)

在构建命令中添加--include-dependency-tree参数,触发UI5的树摇(Tree Shaking)机制,自动识别应用实际使用的组件,仅打包必要文件:

ui5 build self-contained --clean-dest --all --include-dependency-tree

该参数会遍历你的应用代码、视图、控制器等所有资源,精准筛选出被引用的UI5控件和模块,自动排除未使用的文件(比如你提到的CarouselLayout.js)。

方法2:精准声明依赖(手动梳理)

若明确知道应用仅用到某个库中的特定组件,可在manifest.json中不再依赖整个库,而是声明具体组件路径:

"dependencies": {
    "minUI5Version": "1.118.0",
    "libs": {
        "sap.ui.core": {},
        "sap.ui.unified": {},
        "sap.m": {},
        "sap.f": {},
        "sap.ui.layout": {
            "types": [
                "sap.ui.layout.Grid",
                "sap.ui.layout.VerticalLayout"
                // 仅添加实际用到的sap.ui.layout下的组件
            ]
        }
    }
},

此方式需手动梳理所有用到的组件,适合组件数量较少的场景,但维护成本较高。

方法3:手动排除特定文件(应急方案)

针对个别明确不需要的文件,可在项目根目录的ui5.yaml中配置排除规则:

builder:
  resources:
    excludes:
      - "**/CarouselLayout.js"
      # 支持通配符,可添加更多需排除的文件路径

注意:该方式仅适合临时应急,长期维护需手动更新排除列表,容易遗漏或误删必要文件,不推荐作为常规方案。

额外说明

  • 确保使用UI5 Tooling v3及以上版本,树摇和依赖分析功能在v3版本中才得到完善支持。
  • 构建完成后可直接检查输出的resources文件夹,确认未使用的文件已被排除。

内容的提问来源于stack exchange,提问作者BenjyTec

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 11:43:11