Yes, jbang uses javac to do compilation - consider jbang similar to a build too like make/gradle/ant/npm etc. that orchestrate build and execution of a script/app.
About multitude linux distributions then jbang runs on anything that has java available meaning, any linux I know of.
about location of system for the binaries jbang uses then there are many and I can’t fully list them as they user configurable, but by default I locate
javac in the PATH env var, if not there then in JAVA_HOME and none of that works I download the right java into JBANG_HOME/jdks/ where JBANG_HOME defaults to ~/.jbang but could be set by the user.
Due to this need for adjusting to users configuration I’m pretty sure there is no way to make this fit in non-classic.
let me know if that helps.