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

Symfony执行assetic:dump命令时遭遇Uglifycss错误

解决Symfony中assetic:dump --env=prod执行时的uglifycss语法错误

这个SyntaxError: Unexpected token {的问题根源很明确:你的Node.js版本过低,不支持uglifycss最新版本里用到的ES6解构赋值语法。uglifycss后续版本改用了ES6特性,但老版本Node(比如v6.x及以下)无法解析这类语法,所以抛出了错误。

下面给你两种可行的解决方案,按需选择:

方案一:升级Node.js版本

  1. 先检查当前Node版本,确认是否是低版本导致的问题:
    node -v
    
    如果输出是v6.x或更低,那肯定是版本不兼容的锅。
  2. 推荐用Node版本管理器(nvm)来安全升级,避免影响系统自带的Node环境:
    • 先卸载现有全局安装的uglifycss:
      npm uninstall -g uglifycss
      
    • 安装nvm(你可以搜索nvm的官方安装步骤),之后安装一个支持ES6的LTS版本,比如v18:
      nvm install 18
      nvm use 18
      
    • 重新全局安装uglifycss:
      npm install -g uglifycss
      
  3. 再次执行Symfony的assetic命令:
    php app/console assetic:dump --env=prod
    

方案二:安装兼容旧Node的uglifycss旧版本

如果你暂时不想升级Node,可以安装uglifycss的v0.0.29版本——这个版本没有使用ES6语法,能适配老Node:

  1. 先卸载当前的uglifycss:
    npm uninstall -g uglifycss
    
  2. 指定安装旧版本:
    npm install -g uglifycss@0.0.29
    
  3. 重新运行assetic dump命令即可正常执行。

另外补充下:从错误信息看你的uglifycss路径配置是正确的,所以不用纠结路径问题,核心就是版本兼容的事儿。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:40:24