question: public static String findCeylonScript ( File defaultValue , Project project ) { String scriptName = getScriptName ( "ceylon" ) ; if ( defaultValue != null ) { if ( ! defaultValue . exists ( ) ) throw new BuildException ( "Failed to find '" + scriptName + "' executable in " + defaultValue . getPath ( ) ) ; if ( ! defaultValue . canExecute ( ) ) throw new BuildException ( "Cannot execute '" + scriptName + "' executable in " + defaultValue . getPath ( ) + " (not executable)" ) ; return defaultValue . getAbsolutePath ( ) ; } File ceylonHome = null ; try { ceylonHome = LauncherUtil . determineHome ( ) ; } catch ( URISyntaxException e ) { throw new BuildException ( "Failed to determine Ceylon home" , e ) ; } if ( ceylonHome == null ) throw new BuildException ( "Failed to find Ceylon home, specify the ceylon.home property or set the CEYLON_HOME environment variable" ) ; File script = new File ( new File ( ceylonHome , "bin" ) , scriptName ) ; if ( ! script . exists ( ) ) throw new BuildException ( "Failed to find '" + scriptName + "' executable in " + ceylonHome ) ; if ( ! script . canExecute ( ) ) throw new BuildException ( "Cannot execute '" + scriptName + "' executable in " + ceylonHome + " (not executable)" ) ; return script . getAbsolutePath ( ) ; }
target:  Tries to find the given script either user-specified or detected