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

部署TypeScript版Strapi至Railway时遇「Cannot find module typescript」错误

部署TypeScript版Strapi至Railway平台遇到的问题

详情

尝试将TypeScript编写的Strapi CMS部署至Railway平台。平台仅提供JavaScript模板,无TypeScript模板,且官方文档未提及TypeScript版本部署至Railway的相关内容。

Railway错误日志

以下是Railway的错误日志,推测系统尝试编译JavaScript文件,但已配置编译器忽略node_modules。

#13 6.049 Error: Cannot find module 'typescript'
#13 6.049 Require stack:
#13 6.049 - /app/node_modules/fork-ts-checker-webpack-plugin/lib/typescript/type-script-worker-config.js
#13 6.049 - /app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin-config.js
#13 6.049 - /app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin.js
#13 6.049 - /app/node_modules/fork-ts-checker-webpack-plugin/lib/index.js
#13 6.049 - /app/node_modules/@strapi/admin/webpack.config.js
#13 6.049 - /app/node_modules/@strapi/admin/utils/get-custom-webpack-config.js
#13 6.049 - /app/node_modules/@strapi/admin/utils/index.js
#13 6.049 - /app/node_modules/@strapi/admin/index.js
#13 6.049 - /app/node_modules/@strapi/strapi/lib/commands/builders/admin.js
#13 6.049 - /app/node_modules/@strapi/strapi/lib/commands/builders/index.js
#13 6.049 - /app/node_modules/@strapi/strapi/lib/commands/build.js
#13 6.049 - /app/node_modules/@strapi/strapi/bin/strapi.js
#13 6.049     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
#13 6.049     at Function.resolve (internal/modules/cjs/helpers.js:107:19)
 
#13 6.049     at createTypeScriptWorkerConfig (/app/node_modules/fork-ts-checker-webpack-plugin/lib/typescript/type-script-worker-config.js:16:70)
#13 6.049     at createPluginConfig (/app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin-config.js:11:82)
#13 6.049     at ForkTsCheckerWebpackPlugin.apply (/app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin.js:57:63)
#13 6.049     at createCompiler (/app/node_modules/webpack/lib/webpack.js:73:12)
#13 6.049     at create (/app/node_modules/webpack/lib/webpack.js:134:16)
#13 6.049     at webpack (/app/node_modules/webpack/lib/webpack.js:158:32)
#13 6.049     at f (/app/node_modules/webpack/lib/index.js:64:16)
#13 6.049     at Object.build (/app/node_modules/@strapi/admin/index.js:60:20) {
#13 6.049   code: 'MODULE_NOT_FOUND',
#13 6.049   requireStack: [
#13 6.049     '/app/node_modules/fork-ts-checker-webpack-plugin/lib/typescript/type-script-worker-config.js',
#13 6.049     '/app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin-config.js',
#13 6.049     '/app/node_modules/fork-ts-checker-webpack-plugin/lib/plugin.js',
#13 6.049     '/app/node_modules/fork-ts-checker-webpack-plugin/lib/index.js',
#13 6.049     '/app/node_modules/@strapi/admin/webpack.config.js',
#13 6.049     '/app/node_modules/@strapi/admin/utils/get-custom-webpack-config.js',
#13 6.049     '/app/node_modules/@strapi/admin/utils/index.js',
#13 6.049     '/app/node_modules/@strapi/admin/index.js',
#13 6.049     '/app/node_modules/@strapi/strapi/lib/commands/builders/admin.js',
#13 6.049     '/app/node_modules/@strapi/strapi/lib/commands/builders/index.js',
#13 6.049     '/app/node_modules/@strapi/strapi/lib/commands/build.js',
#13 6.049     '/app/node_modules/@strapi/strapi/bin/strapi.js'
#13 6.049   ]
#13 6.049 }

tsconfig.json

TypeScript编译器配置如下:

{
  "extends": "@strapi/typescript-utils/tsconfigs/server",
  "compilerOptions": {
    "outDir": "dist",
    "rootDir": "."
  },
  "include": [
    "./",
    "./**/*.ts",
    "./**/*.js",
    "src/**/*.json"
  ],
  "exclude": [
    "node_modules/",
    "build/",
    "dist/",
    ".cache/",
    ".tmp/",
    "src/admin/",
    "**/*.test.*",
    "src/plugins/**"
  ]
}

Package.json

以下为TypeScript快速启动模板中的package.json:

{
  "name": "aston-and-fincher-intranet-cms",
  "private": true,
  "version": "0.1.0",
  "description": "A Strapi application",
  "scripts": {
    "develop": "strapi develop",
    "start": "strapi start",
    "build": "strapi build",
    "strapi": "strapi"
  },
  "dependencies": {
    "@strapi/plugin-graphql": "^4.9.0",
    "@strapi/plugin-i18n": "4.9.0",
    "@strapi/plugin-users-permissions": "4.9.0",
    "@strapi/provider-upload-cloudinary": "^4.9.0",
    "@strapi/strapi": "4.9.0",
    "better-sqlite3": "8.0.1"
  },
  "author": {
    "name": "George Fincher"
  },
  "strapi": {
    "uuid": "3a5b99f5-14e8-4962-80ef-dcf9bb469d41"
  },
  "engines": {
    "node": ">=14.19.1 <=18.x.x",
    "npm": ">=6.0.0"
  },
  "license": "MIT"
}

已尝试方案

已遵循TypeScript部署相关指南,tsconfig.json配置无误,也添加了额外环境变量,但似乎与当前错误日志无关。不想切换至JavaScript版本,寻求解决方案。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 01:27:14