@Override
	public JavaFileObject getJavaFileForInput(Location location, String className, Kind kind)
			throws IOException {
		if (!location.equals(StandardLocation.SOURCE_PATH) || "module-info".equals(className)) {
			// Our Ghidra scripts will not use Java 9's module definition file (module-info.java).
			return fileManager.getJavaFileForInput(location, className, kind);
		}
		String relativePath = className.replace('.', '/');
		for (ResourceFile sourceDir : sourceDirs) {
			ResourceFile file = new ResourceFile(sourceDir, relativePath);
			if (file.exists()) {
				return createFileObject(sourceDir, file, kind);
			}
		}
		return null;
	}
Create a {@link JavaFileManager} for use by the {@link JavaCompiler}.

@param sourceDirs the directories containing source
@param filesToAvoid known "bad" files to hide from the compiler
Ghidra/Features/Base/src/main/java/ghidra/app/script/ResourceFileJavaFileManager.java