The problem was caused by a lack of modules to include in the custom Jre.
I am still not understanding the relationship between java.naming and javax.naming, but based on life8888888's advice, I re-created the custom JRE to include java.naming and it now starts correctly. I still lack the knowledge to determine which modules are needed, but I will close this trouble for the time being. Thanks to all of you for your advice.