From the net.sf.saxon.Query command line it is possible to use the opion -init:Initializer to define a class that is invoked to initialize the configuration.
Setting the ModuleURIResolver from this Initializer does not work. This is because the query static context is set up from the configuration BEFORE the user initialization hook is invoked, and is not affected by subsequent changes to the Configuration object. A patch is being raised to defer this initialization until AFTER the user's Initializer is invoked. (This patch didn't make it into 18.104.22.168)