NodeJS - 在 Linux 中找不到自定义模块。在 windows 中工作正常
NodeJS - Cannot find custom module in Linux. Works fine in windows
下面是我的文件夹结构
--package.json
--node_modules
--dist
--server.js
----app
------driver
------utils
在 'driver' 文件夹中,我有 driver.model.ts 文件引用了 BaseValidator
import { BaseValidator } from '../utils/BaseValidator';
export class LoginDriverModel extends BaseValidator {
...
}
在 'utils' 文件夹中,我有一个名为 BaseValidator.ts 的文件,例如
export class BaseValidator {
}
现在当我 运行 在 windows 和 linux 中设置环境变量后 NODE_ENV=dev
命令
node server.js [works fine in windows]
nodejs server.js [uncaughtException: Cannot find module '../utils/BaseValidator' in Linux]
如果我们有相同的文件名和 class 名称,在相同的情况下,问题似乎发生在 Linux 中。将文件名从 'BaseValidator.ts' 更改为 'baseValidator.ts'.
后问题得到解决
引用 class 如下所示,
import { BaseValidator } from '../utils/baseValidator';
export class LoginDriverModel extends BaseValidator {
...
}
下面是我的文件夹结构
--package.json
--node_modules
--dist
--server.js
----app
------driver
------utils
在 'driver' 文件夹中,我有 driver.model.ts 文件引用了 BaseValidator
import { BaseValidator } from '../utils/BaseValidator';
export class LoginDriverModel extends BaseValidator {
...
}
在 'utils' 文件夹中,我有一个名为 BaseValidator.ts 的文件,例如
export class BaseValidator {
}
现在当我 运行 在 windows 和 linux 中设置环境变量后 NODE_ENV=dev
命令node server.js [works fine in windows]
nodejs server.js [uncaughtException: Cannot find module '../utils/BaseValidator' in Linux]
如果我们有相同的文件名和 class 名称,在相同的情况下,问题似乎发生在 Linux 中。将文件名从 'BaseValidator.ts' 更改为 'baseValidator.ts'.
后问题得到解决引用 class 如下所示,
import { BaseValidator } from '../utils/baseValidator';
export class LoginDriverModel extends BaseValidator {
...
}