Skip to content

Module not found: Error: Can't resolve 'child_process'  #311

@roudikk

Description

@roudikk

Environment details
(Operating system, browser information, SDK version)

  • Windows
  • Chrome, Firefox
  • QB 2.8.1 - 2.8.0 - 2.6.2
  • Ionic v3
  • Angular 5.2.5

Did this work before?

  • No

Expected behavior

  • Building a production build should work without throwing any error

Actual behavior

  • Building a production build using ionic build --prod or npm run build --prod throwing below error:

Logs
(please, switch on a debugging mode and share us outputs uses github gist)

[09:30:48] ionic-app-script task: "build" [09:30:48] Error: ./node_modules/node-xmpp-client/lib/Client.js Module not found: Error: Can't resolve 'child_process' in 'C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\lib' resolve 'child_process' in 'C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\lib' Parsed request is a module using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\package.json (relative path: ./lib) after using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\package.json (relative path: ./lib) resolve as module looking for modules in C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules) Field 'browser' doesn't contain a valid alias configuration after using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules) using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules/child_process) no extension Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process doesn't exist .ts Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.ts doesn't exist .js Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.js doesn't exist .json Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.json doesn't exist as directory C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process doesn't exist [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.ts] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.js] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.json] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process] @ ./node_modules/node-xmpp-client/lib/Client.js 15:11-35 @ ./node_modules/node-xmpp-client/index.js @ ./node_modules/quickblox/src/modules/qbChat.js @ ./node_modules/quickblox/src/qbMain.js @ ./src/provider/chat-service.ts @ ./src/app/app.module.ngfactory.js @ ./src/app/main.ts Error: ./node_modules/node-xmpp-client/lib/Client.js Module not found: Error: Can't resolve 'child_process' in 'C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\lib' resolve 'child_process' in 'C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\lib' Parsed request is a module using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\package.json (relative path: ./lib) after using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\node-xmpp-client\package.json (relative path: ./lib) resolve as module looking for modules in C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules) Field 'browser' doesn't contain a valid alias configuration after using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules) using description file: C:\Users\Roudy Kanaan\Documents\synkers-support\package.json (relative path: ./node_modules/child_process) no extension Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process doesn't exist .ts Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.ts doesn't exist .js Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.js doesn't exist .json Field 'browser' doesn't contain a valid alias configuration C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.json doesn't exist as directory C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process doesn't exist [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.ts] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.js] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process.json] [C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\child_process] @ ./node_modules/node-xmpp-client/lib/Client.js 15:11-35 @ ./node_modules/node-xmpp-client/index.js @ ./node_modules/quickblox/src/modules/qbChat.js @ ./node_modules/quickblox/src/qbMain.js @ ./src/provider/chat-service.ts @ ./src/app/app.module.ngfactory.js @ ./src/app/main.ts at new BuildError (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\@ionic\app-scripts\dist\util\errors.js:16:28) at callback (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\@ionic\app-scripts\dist\webpack.js:121:28) at emitRecords.err (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\Compiler.js:269:13) at Compiler.emitRecords (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\Compiler.js:375:38) at emitAssets.err (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\Compiler.js:262:10) at applyPluginsAsyncSeries1.err (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\Compiler.js:368:12) at next (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\tapable\lib\Tapable.js:218:11) at Compiler.compiler.plugin (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\performance\SizeLimitsPlugin.js:99:4) at Compiler.applyPluginsAsyncSeries1 (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\tapable\lib\Tapable.js:222:13) at Compiler.afterEmit (C:\Users\Roudy Kanaan\Documents\synkers-support\node_modules\webpack\lib\Compiler.js:365:9)

Steps to reproduce the behavior

  • Create an empty ionic project, add quickblox, attempt a production build

Any others comments?

  • Tried the below but didn't work (In webpack config):
    module.exports.node = { child_process: 'empty' };
    and:
    module.exports.node = { fs: 'empty' };

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions