Skip to content

'Error: Module did not self-register.' with Worker Threads #224

@davideutsch

Description

@davideutsch

When I try to use the jdbc or jinst library in multiple threads, I get Error: Module did not self-register. exception.

Reproduction steps

import { isMainThread, Worker } from 'worker_threads';

if (isMainThread) {
  require('jdbc/lib/jinst'); 
  require('jdbc/lib/pool'); 
  new Worker(__filename);
} else {
  require('jdbc/lib/jinst'); // throws: `Error: Module did not self-register.` 
  require('jdbc/lib/pool'); // throws: `Error: Module did not self-register.` 
}

Environment

  • Node version: 12.18.1
  • Typescript: 3.6.4
  • JDBC: 0.7.5

Full Stack Trace

Error: Module did not self-register: '\\?\C:\projectFolder\node_modules\java\builde\Release\nodejavabridge_bindings.node' 
at Object.Module._extensions..node (internal/modules/cjs/loader.js:1188:18)
    at Module.load (internal/modules/cjs/loader.js:986:32)
    at Function.Module._load (internal/modules/cjs/loader.js:879:14)
    at Module.require (internal/modules/cjs/loader.js:1026:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (C:\projectFolder\node_modules\java\lib\nodeJavaBridge.js:21:16)
    at Module._compile (internal/modules/cjs/loader.js:1138:30)
    at Module._compile (C:\projectFolder\node_modules\source-map-support\source-map-support.js:547:25)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
    at Module.load (internal/modules/cjs/loader.js:986:32) 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions