Webpack4 does not execute main module to my page entry

Try adding a script tag that loads your vendors.js to your html page.

Faced this problem myself. I think webpack assumes that you load all needed chunks, and starts only after that has happened. See these lines?

/******/    // add entry module to deferred list
/******/    deferredModules.push([86,"vendors",3]);
/******/    // run deferred modules when ready
/******/    return checkDeferredModules();

Looks like it says something like

Hey, this very chunk is ready, but there should also be a chunk named 'vendors' somewhere. I'll check if it's already here (checkDeferredModules), and if it is - I'll start, otherwise I'll pass.

In my case, I had 3 chunks needed for my page to run. It did not do anything until I included all 3 chunks into the page html. Although I thought it would load them asynchronously. But I guess, for async chunks to work, one needs to do something more clever than simple import from. Check out https://webpack.js.org/api/module-methods/#import-

Hope it helps