Is it possible to have multiple versions of the same module?

@thembo42 I am trying to install some modules manually, that is, copying them to the ‘…/modules’ folder on my pc. The thing is that some modules may need different versions of the same module and so I choose to copy different versions of the same module to that folder. The problem is that every time is run mvn jetty:run from the webapp folder in core, it seems to delete some module files, and I keep running into the errors where I am being asked to install specific module versions.

I need help on how to go about this???

quite a complex process but you can consider using module overlays(is this supported in openmrs @dkayiwa @ibacher ) or leveraging maven’s dependency mgnt in your pom.xml to handle multiple module versions without conflicts in the ‘modules’ folder during builds.

kindly what versions are you working with… and most preferably the errors you are encountering sharing them with

1 Like

I had tried to reproduce these errors, so that I could send some screenshots but I stumbled upon something. Previously I was downloading the .omod files and placing them in the modules folder manually and mvn jetty:run was deleting them, but when I restored my system to a working version(one that could allow me to login without errors) and instead used the web interface to upload the .omod files directly, mvn jetty:run seemed to ignore them the next time it was run. So I think this is a workaround that allows me to have multiple module versions at at the same time.

Thanks for the engagement.

1 Like

The require module version is used to indicate the minimum version required before a module could run. That means any version higher than the indicated version should work fine. Having different versions for the same module in your /modules directory will not solve the problem since openmrs server will just pick the first one in the list and ignore the others. The quickest solution to your issue is running the lastest versions of the individual modules you are using, also running the highest version from the required versions should work fine.

Also if you have custom modules, you might encounter backward compatibility issues, however if you are only using openmrs modules you should be good.