tsconfig-paths icon indicating copy to clipboard operation
tsconfig-paths copied to clipboard

Not working - paths are not being replaced

Open matomesc opened this issue 11 months ago • 2 comments

I have the following config with paths:

{
  "compilerOptions": {
    "target": "ES2017",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strict": true,
    "noEmit": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "bundler",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve",
    "incremental": true,
    "paths": {
      "@/*": ["./src/*"]
    },
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true
  },
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
  "exclude": ["node_modules"]
}

And I'm running the following node command: node --require tsconfig-paths/register --require reflect-metadata --enable-source-maps dist/web/src/server/web.js\"

But it's failing with the following error:

Error: Cannot find module '@/server/services/UsersService'
Require stack:
- /workspace/dist/web/src/server/workers/ExampleWorker.js
- /workspace/dist/web/src/server/web.js
    at Function.<anonymous> (node:internal/modules/cjs/loader:1249:15)
    at Function.Module._resolveFilename (/workspace/node_modules/tsconfig-paths/src/register.ts:115:36)
    at <anonymous> (/workspace/node_modules/next/src/server/require-hook.ts:51:34)
    at Function._load (node:internal/modules/cjs/loader:1075:27)
    at TracingChannel.traceSync (node:diagnostics_channel:322:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:219:24)
    at Module.<anonymous> (node:internal/modules/cjs/loader:1340:12)
    at Module.patchedRequire (/workspace/node_modules/require-in-the-middle/index.js:223:34)
    at Hook._require.Module.require (/workspace/node_modules/require-in-the-middle/index.js:171:27)
    at Module.mod.require (/workspace/node_modules/next/src/server/require-hook.ts:70:26) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/workspace/dist/web/src/server/workers/ExampleWorker.js',
    '/workspace/dist/web/src/server/web.js'
  ]
}

You can see that tsconfig-paths is part of the callstack but the path is not replaced. Any ideas on how to fix?

matomesc avatar Jan 30 '25 19:01 matomesc

I have similar issue as well.

jte0711 avatar Jun 12 '25 09:06 jte0711

The same issue with [email protected]

Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@@utils/index.js' imported from D:\Projects\johniexu-demo\tsconfig-paths\pages\home.js
Did you mean to import "file:///D:/Projects/johniexu-demo/tsconfig-paths/utils/index.js"?
    at packageResolve (node:internal/modules/esm/resolve:873:9)
    at moduleResolve (node:internal/modules/esm/resolve:946:18)
    at defaultResolve (node:internal/modules/esm/resolve:1188:11)
    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:642:12)
    at #cachedDefaultResolve (node:internal/modules/esm/loader:591:25)
    at ModuleLoader.resolve (node:internal/modules/esm/loader:574:38)
    at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:236:38)
    at ModuleJob._link (node:internal/modules/esm/module_job:130:49) {
  code: 'ERR_MODULE_NOT_FOUND'
}

the alias path is found, but throw error after call Module._resolveFilename() with absolute file path. I'm sure the file exist. Image

JohnieXu avatar Oct 11 '25 13:10 JohnieXu