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

FilamentPHP搭配TailwindCSS v4部署时无法找到tailwind.config.preset模块

问题:Nixpacks部署时无法找到Filament Tailwind预设文件

本地执行npm run build一切正常,但将相同代码通过Nixpacks部署到服务器时构建失败,报错如下:

[vite:css] [postcss] Cannot find module './vendor/filament/support/tailwind.config.preset'

[vite:css] [postcss] Cannot find module './vendor/filament/support/tailwind.config.preset'
Require stack:
- /app/tailwind.config.js
file: /app/resources/css/app.css:undefined:NaN
     at Function._resolveFilename (node:internal/modules/cjs/loader:1249:15)
     at Function.resolve (node:internal/modules/helpers:148:19)
     at _resolve (/app/node_modules/tailwindcss/node_modules/jiti/dist/jiti.js:1:246378)
     at jiti (/app/node_modules/tailwindcss/node_modules/jiti/dist/jiti.js:1:249092)
     at /app/tailwind.config.js:1:260
     at evalModule (/app/node_modules/tailwindcss/node_modules/jiti/dist/jiti.js:1:251913)
     at jiti (/app/node_modules/tailwindcss/node_modules/jiti/dist/jiti.js:1:249841)
     at /app/node_modules/tailwindcss/lib/lib/load-config.js:52:26
     at loadConfig (/app/node_modules/tailwindcss/lib/lib/load-config.js:62:6)
     at getTailwindConfig (/app/node_modules/tailwindcss/lib/lib/setupTrackingContext.js:71:116)
ERROR: process "/bin/bash -ol pipefail -c npm run build" did not complete successfully: exit code: 1

相关配置文件

tailwind.config.js

import preset from './vendor/filament/support/tailwind.config.preset'

export default {
    presets: [preset],
    content: [
        './app/Filament/**/*.php',
        './resources/views/filament/**/*.blade.php',
        './vendor/filament/**/*.blade.php',
    ],
}

package.json

"dependencies": {
        "@tailwindcss/vite": "^4.1.7",
        "axios": "1.9.0",
        "concurrently": "^9.1.2",
        "laravel-vite-plugin": "^1.2.0",
        "postcss-selector-parser": "^7.1.0",
        "vite": "6.3.5"
    },
    "optionalDependencies": {
        "@rollup/rollup-linux-x64-gnu": "4.40.2",
        "@tailwindcss/oxide-linux-x64-gnu": "^4.1.7",
        "lightningcss-linux-x64-gnu": "^1.30.1"
    },
    "devDependencies": {
        "@tailwindcss/forms": "^0.5.10",
        "@tailwindcss/typography": "^0.5.16",
        "autoprefixer": "^10.4.21",
        "postcss": "^8.5.3",
        "postcss-nesting": "^13.0.1",
        "tailwindcss": "^3.4.17"
    },

composer.json

"require": {
        "php": "^8.4",
        "filament/filament": "3.3",
        "laravel/framework": "^12.0",
        "laravel/tinker": "^2.10.1",
        "livewire/flux": "^2.1.1",
        "livewire/volt": "^1.7.0"
    },
    "require-dev": {
        "fakerphp/faker": "^1.23",
        "laravel/pail": "^1.2.2",
        "laravel/pint": "^1.18",
        "laravel/sail": "^1.41",
        "mockery/mockery": "^1.6",
        "nunomaduro/collision": "^8.6",
        "pestphp/pest": "^3.8",
        "pestphp/pest-plugin-laravel": "^3.2"
    },

解决办法

  • 确保Composer依赖已安装:Nixpacks默认可能不会自动执行composer install,需要在构建流程中明确添加该步骤。在项目根目录创建nixpacks.toml文件,指定构建顺序:

    [phases.install]
    commands = ["composer install --no-dev --optimize-autoloader", "npm install"]
    
    [phases.build]
    commands = ["npm run build"]
    
  • 检查路径大小写:Linux环境大小写敏感,确认vendor/filament/support/tailwind.config.preset的路径大小写与本地一致,避免因大小写不匹配导致文件找不到。

  • 调整Tailwind配置的导入路径:尝试使用绝对路径导入预设文件,避免相对路径解析问题:

    import preset from `${process.cwd()}/vendor/filament/support/tailwind.config.preset`
    
  • 验证Nixpacks工作目录:确认Nixpacks的工作目录为项目根目录(报错中显示为/app),如果工作目录不对,会导致相对路径解析错误。可以在构建日志中查看当前工作目录信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 02:27:08