protected ResourceFile createInnerClassScript() throws Exception {
		ResourceFile newScriptFile = createTempScriptFile();
		String filename = newScriptFile.getName();
		String className = filename.replaceAll("\\.java", "");

		//@formatter:off
		String newScript =
				"import ghidra.app.script.GhidraScript;\n\n" +

		    "public class "+className+" extends GhidraScript {\n\n" +

		    	"@Override\n" +
		    	"public void run() throws Exception {\n" +
		    	"    MyInnerClass mic = new MyInnerClass();\n" +
		    	"    println(mic.toString());\n\n" +

		    	"    MyExternalClass mec = new MyExternalClass();\n" +
		    	"    println(mec.toString());\n" +
		    	"}\n\n" +

    			"public class MyInnerClass {\n" +
    			"@Override\n" +
    			"public String toString() {\n" +
    			"return \"I am an inner class.\";\n" +
    			"}\n" +
    			"}\n" +
    			"}\n\n" +

			"class MyExternalClass {\n" +
			"@Override\n" +
			"public String toString() {\n" +
			"return \"I am an external class.\";\n" +
			"}\n" +
			"};\n";
		//@formatter:on

		writeStringToFile(newScriptFile, newScript);

		return newScriptFile;
	}
Unusual Code Alert!: the test runs faster than the writing of the class file
and the File object's modified granularity is not low enough such that sometimes
the code will not recompile a script that we have changed, as it will not do
so if it thinks the file has not changed.

@param file the file to update
Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/script/AbstractGhidraScriptMgrPluginTest.java