If I recreate the modules\__pycache__ dir on my side, recompile and reinstall the app on the destination server, the compiled app copies the __pycache__ to the destination server when installing (which is correct), but does not copy the __pycache__\general.cpython-37.pyc to modules dir (which it think is the problem) and web2py returns the error
<class 'ImportError'> (ModuleNotFoundError("No module named 'applications.ajc.modules.general'"), <traceback object at 0x045733F0>)
when running the app.
If I on the destination server copy the modules\__pycache__\general.cpython-37.pyc to modules dir and change it's name to general.pyc, it all works.
It seems that web2py is not doing this last step.