if --dest-dir or -d is specified with a directory that does not exist, then only .class files are dumped. .js files of the evaluated source scripts are not dumped. Looking at the code, DumpBytecode.java creates directory if it does not exist - but Source.java does not create directory. That should be uniform.