args.add( "/out:" + new File( config.getBuildDirectory(), getOutputFile( config ) ).getAbsolutePath() );
String nowarn = (String) compilerArguments.get( "-nowarn" );  if ( ! StringUtils.isEmpty( nowarn ) ) { args.add( "/nowarn:" + nowarn ); }      String out = (String) compilerArguments.get( "-out" );  if ( ! StringUtils.isEmpty( out ) ) { args.add( "/out:" + new File( config.getOutputLocation(), out ).getAbsolutePath() ); }else { args.add( "/out:" + new File( config.getOutputLocation(), getOutputFile( config ) ).getAbsolutePath() ); }
    private String[] buildCompilerArguments( CompilerConfiguration config,                                             String[] sourceFiles )        throws CompilerException    {        List args = new ArrayList();        if ( config.isDebug() )        {            args.add( "/debug+" );        }        else        {            args.add( "/debug-" );        }        // config.isShowWarnings()        // config.getSourceVersion()        // config.getTargetVersion()        // config.getSourceEncoding()        // ----------------------------------------------------------------------        //        // ----------------------------------------------------------------------        for ( Iterator it = config.getClasspathEntries().iterator(); it.hasNext(); )        {            String element = (String) it.next();            File f = new File( element );            if ( !f.isFile() )            {                continue;            }            args.add( "/reference:" + element );        }        // TODO: include resources        // ----------------------------------------------------------------------        // Main class        // ----------------------------------------------------------------------        Map compilerArguments = config.getCustomCompilerArguments();        String mainClass = (String) compilerArguments.get( "mainClass" );        if ( !StringUtils.isEmpty( mainClass ) )        {            args.add( "/mainClass" );            args.add( mainClass );        }        // ----------------------------------------------------------------------        // Out        // ----------------------------------------------------------------------        args.add( "/out:" + new File( config.getBuildDirectory(), getOutputFile( config ) ).getAbsolutePath() );        // ----------------------------------------------------------------------        // Target        // ----------------------------------------------------------------------        String target = (String) compilerArguments.get( "target" );        if ( StringUtils.isEmpty( target ) )        {            args.add( "/target:library" );        }        else        {            args.add( "/target:" + target );        }        for ( int i = 0; i < sourceFiles.length; i++ )        {            String sourceFile = sourceFiles[ i ];            args.add( sourceFile );        }        return (String[]) args.toArray( new String[ args.size() ] );    }