strace or procmon equivalent for java

When I run a C++ program, and it says “unable to open file” but does not say what the filename is, I normally use strace (Linux) or procmon(Windows) to find out which file it is trying to open and where it is looking for it.

I can’t do that with java programs because all this is controlled from the java vm. Some of the jars/classes I deal with have configuration files which are optional. Sometimes, it would be nice to know what these configuration files (like .css files for javafx programs) are called, especially when no errors are reported.

If I don’t have access to the sources, for instance, when I am given a .jar or .class file, is there an equivalent of strace (Linux) or procmon (windows) for java or is it some combination of debug options that gets the java VM to list out what files it is trying to open or where it is looking for the files?