diff --git a/lib/server/start.js b/lib/server/start.js index 940c38b..51e772a 100644 --- a/lib/server/start.js +++ b/lib/server/start.js @@ -39,7 +39,13 @@ function concat(...paths) { }); } async function startup(path, connector, omitWatchers, omitTimers, routine) { - const errorHandler = require((0, path_1.join)(path, 'lib', 'configuration', 'errors')).default; + let errorHandler = undefined; + try { + errorHandler = require((0, path_1.join)(path, 'lib', 'configuration', 'errors')).default; + } + catch (err) { + // 不存在errors配置 + } const serverConfiguration = require((0, path_1.join)(path, 'lib', 'configuration', 'server')).default; // 拿到package.json,用作项目的唯一标识,否则无法区分不同项目的Redis+socketIO连接 const packageJson = require((0, path_1.join)(path, 'package.json')); diff --git a/src/server/start.ts b/src/server/start.ts index da2fbb7..80485f8 100644 --- a/src/server/start.ts +++ b/src/server/start.ts @@ -57,12 +57,18 @@ export async function startup) => Promise, ): Promise<(() => Promise) | any> { - const errorHandler: ErrorHandler = require(join( - path, - 'lib', - 'configuration', - 'errors' - )).default; + let errorHandler: ErrorHandler | undefined = undefined; + + try { + errorHandler = require(join( + path, + 'lib', + 'configuration', + 'errors' + )).default; + } catch (err) { + // 不存在errors配置 + } const serverConfiguration: ServerConfiguration = require(join( path, @@ -218,7 +224,7 @@ export async function startup { if (props.level === "error") { appLoader.execRoutine(async (ctx) => { - await errorHandler( props.caller, props.args, ctx); + await errorHandler(props.caller, props.args, ctx); }).catch((err) => { console.warn('执行全局错误处理失败:', err); }); diff --git a/src/server/watch.ts b/src/server/watch.ts index d930ffb..abad55b 100644 --- a/src/server/watch.ts +++ b/src/server/watch.ts @@ -16,7 +16,7 @@ import { LogFormatter, LogFormatterProp, polyfillConsole } from "./polyfill"; 服务器重启 → 清理缓存并重新启动服务 */ -declare const require: NodeRequire; +declare const require: NodeJS.Require; declare const process: NodeJS.Process;