测试wj-config Version_2分支遇模块缺失及npm安装错误求助
关于wj-config仓库Version_2分支的测试问题
我是开源项目新手,正在探索相关领域,目前在处理wj-config仓库的Version_2分支。因为需要基于该分支开发,但直接执行npm install会安装wj-config@2.0.0-beta.2版本,无法获取分支最新代码。
手动下载包后的启动错误
我手动将分支代码放入项目文件夹,按照README操作后执行npm start,出现以下错误:
> tsest@1.0.0 start > ts-node ./node_modules/wj-config/src/index.ts && ts-node ./node_modules/wj-config/src/Builder.ts index.js node:internal/modules/cjs/loader:988 throw err; ^ Error: Cannot find module './index.ts' Require stack: - /Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/wj-config/src/imaginaryUncacheableRequireResolveScript at Module._resolveFilename (node:internal/modules/cjs/loader:985:15) at Function.resolve (node:internal/modules/cjs/helpers:109:19) at requireResolveNonCached (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:549:16) at getProjectSearchDir (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:519:40) at phase3 (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:267:27) at bootstrap (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:47:30) at main (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:33:12) at Object.<anonymous> (/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/ts-node/dist/bin.js:579:5) at Module._compile (node:internal/modules/cjs/loader:1149:14) at Module._extensions..js (node:internal/modules/cjs/loader:1203:10) { code: 'MODULE_NOT_FOUND', requireStack: [ '/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/node_modules/wj-config/src/imaginaryUncacheableRequireResolveScript' ] } Node.js v18.10.0
我的测试文件
config.js
import wjConfig, { Environment } from './wj-config/src/index.ts'; import mainConfig from "./config/config.json" assert {type: 'json'}; import fs from 'fs'; const loadJsonFile = (fileName, isRequired) => { const fileExists = fs.existsSync(fileName); if (fileExists) { const data = fs.readFileSync(fileName); return JSON.parse(data); } else if (isRequired) { throw new Error(`Configuration file ${fileName} is required but was not found.`); } return {}; }; const env = new Environment(process.env.NODE_ENV); const config = wjConfig() .addObject(mainConfig) .name('Main Configuration') .addObject(loadJsonFile(`./config/config.Development.json`)) .name(`${env.value} Configuration`) .addEnvironment(process.env) .includeEnvironment(env) .createUrlFunctions() .build(env.isDevelopment()); export default await config;
index.js
import config from "./config.js"; console.log(config);
疑问与求助
该仓库使用TypeScript编写,我是否需要自行编译代码?另外我刚接触ES Modules和Node.js,可能在导入语法上存在问题。请指导我如何创建正确的示例Node模块来测试这个包。我的系统是搭载M1芯片的macOS Monterey(版本12.5.1)。
补充:安装GitHub分支依赖的错误
我尝试直接将GitHub分支作为包依赖安装,执行相关命令后出现以下错误:
npm ERR! Cannot read properties of undefined (reading 'spec') npm ERR! A complete log of this run can be found in: npm ERR! /Users/neeraj_py/.npm/_logs/2022-11-04T04_08_06_849Z-debug-0.log
npm日志详情
0 verbose cli /opt/homebrew/Cellar/node/18.10.0/bin/node /opt/homebrew/bin/npm 1 info using npm@8.19.2 2 info using node@v18.10.0 3 timing npm:load:whichnode Completed in 0ms 4 timing config:load:defaults Completed in 1ms 5 timing config:load:file:/opt/homebrew/lib/node_modules/npm/npmrc Completed in 1ms 6 timing config:load:builtin Completed in 2ms 7 timing config:load:cli Completed in 1ms 8 timing config:load:env Completed in 0ms 9 timing config:load:file:/Users/neeraj_py/Desktop/Repositories/wj-config/test_module/.npmrc Completed in 0ms 10 timing config:load:project Completed in 2ms 11 timing config:load:file:/Users/neeraj_py/.npmrc Completed in 0ms 12 timing config:load:user Completed in 0ms 13 timing config:load:file:/opt/homebrew/etc/npmrc Completed in 0ms 14 timing config:load:global Completed in 0ms 15 timing config:load:validate Completed in 0ms 16 timing config:load:credentials Completed in 1ms 17 timing config:load:setEnvs Completed in 0ms 18 timing config:load Completed in 7ms 19 timing npm:load:configload Completed in 7ms 20 timing npm:load:mkdirpcache Completed in 1ms 21 timing npm:load:mkdirplogs Completed in 0ms 22 verbose title npm install WJSoftware/wj-config#Version_2 23 verbose argv "install" "--save" "WJSoftware/wj-config#Version_2" "-or-commit-or-tag" 24 timing npm:load:setTitle Completed in 2ms 25 timing config:load:flatten Completed in 1ms 26 timing npm:load:display Completed in 2ms 27 verbose logfile logs-max:10 dir:/Users/neeraj_py/.npm/_logs 28 verbose logfile /Users/neeraj_py/.npm/_logs/2022-11-04T04_08_06_849Z-debug-0.log 29 timing npm:load:logFile Completed in 2ms 30 timing npm:load:timers Completed in 0ms 31 timing npm:load:configScope Completed in 0ms 32 timing npm:load Completed in 14ms 33 timing arborist:ctor Completed in 0ms 34 silly logfile start cleaning logs, removing 1 files 35 silly logfile done cleaning log files 36 timing idealTree:init Completed in 19ms 37 timing arborist:ctor Completed in 0ms 38 timing idealTree:userRequests Completed in 2584ms 39 silly idealTree buildDeps 40 silly fetch manifest undefined@WJSoftware/wj-config#Version_2 41 silly placeDep ROOT undefined@ OK for: tsest@1.0.0 want: WJSoftware/wj-config#Version_2 42 timing idealTree:#root Completed in 1560ms 43 timing idealTree:node_modules/undefined Completed in 0ms 44 timing idealTree:buildDeps Completed in 1560ms 45 timing idealTree:fixDepFlags Completed in 0ms 46 timing idealTree Completed in 4165ms 47 timing reify:loadTrees Completed in 4165ms 48 timing reify:diffTrees Completed in 1ms 49 silly reify moves {} 50 timing reify:retireShallow Completed in 1ms 51 timing reify:createSparse Completed in 0ms 52 timing reify:loadBundles Completed in 0ms 53 silly audit bulk request { 53 silly audit '@cspotcode/source-map-support': [ '0.8.1' ], 53 silly audit '@jridgewell/resolve-uri': [ '3.1.0' ], 53 silly audit '@jridgewell/sourcemap-codec': [ '1.4.14' ], 53 silly audit '@jridgewell/trace-mapping': [ '0.3.9' ], 53 silly audit '@tsconfig/node10': [ '1.0.9' ], 53 silly audit '@tsconfig/node12': [ '1.0.11' ], 53 silly audit '@tsconfig/node14': [ '1.0.3' ], 53 silly audit '@tsconfig/node16': [ '1.0.3' ], 53 silly audit '@types/node': [ '18.11.0' ], 53 silly audit acorn: [ '8.8.0' ], 53 silly audit 'acorn-walk': [ '8.2.0' ], 53 silly audit arg: [ '4.1.3' ], 53 silly audit 'create-require': [ '1.1.1' ], 53 silly audit diff: [ '4.0.2' ], 53 silly audit 'make-error': [ '1.3.6' ], 53 silly audit 'ts-node': [ '10.9.1' ], 53 silly audit typescript: [ '4.8.4' ], 53 silly audit 'v8-compile-cache-lib': [ '3.0.1' ], 53 silly audit yn: [ '3.1.1' ] 53 silly audit } 54 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/advisories/bulk 565ms 55 timing auditReport:getReport Completed in 568ms 56 silly audit report {} 57 timing auditReport:init Completed in 1ms 58 timing reify:audit Completed in 570ms 59 http fetch GET 200 https://codeload.github.com/WJSoftware/wj-config/tar.gz/11e176968b2ccf8dfaca6c23d8a98a24fb2e3678 607ms (cache revalidated) 60 timing reifyNode:node_modules/undefined Completed in 893ms 61 timing reify:unpack Completed in 893ms 62 timing reify:unretire Completed in 0ms 63 timing build:queue Completed in 1ms 64 timing build:deps Completed in 1ms 65 timing build Completed in 1ms 66 timing reify:build Completed in 1ms 67 timing reify:trash Completed in 0ms 68 timing command:install Completed in 5067ms 69 verbose stack TypeError: Cannot read properties of undefined (reading 'spec') 69 verbose stack at updateNodes (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:1179:44) 69 verbose stack at [saveIdealTree] (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:1348:11) 69 verbose stack at Arborist.reify (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:156:31) 69 verbose stack at async Install.exec (/opt/homebrew/lib/node_modules/npm/lib/commands/install.js:145:5) 69 verbose stack at async module.exports (/opt/homebrew/lib/node_modules/npm/lib/cli.js:78:5) 70 verbose cwd /Users/neeraj_py/Desktop/Repositories/wj-config/test_module 71 verbose Darwin 21.6.0 72 verbose node v18.10.0 73 verbose npm v8.19.2 74 error Cannot read properties of undefined (reading 'spec') 75 verbose exit 1 76 timing npm Completed in 5125ms 77 verbose unfinished npm timer reify 1667534886907 78 verbose unfinished npm timer reify:save 1667534891972 79 verbose code 1 80 error A complete log of this run can be found in: 80 error /Users/neeraj_py/.npm/_logs/2022-11-04T04_08_06_849Z-debug-0.log
内容的提问来源于stack exchange,提问作者NYPY
相关产品推荐
相关产品推荐

