langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/JavacTool.java
changeset 27379 5ae894733e09
parent 26266 2d24bda701dc
child 29291 076c277565f7
equal deleted inserted replaced
27325:948cceef81ba 27379:5ae894733e09
    41 
    41 
    42 import com.sun.source.util.JavacTask;
    42 import com.sun.source.util.JavacTask;
    43 import com.sun.tools.javac.file.JavacFileManager;
    43 import com.sun.tools.javac.file.JavacFileManager;
    44 import com.sun.tools.javac.main.Arguments;
    44 import com.sun.tools.javac.main.Arguments;
    45 import com.sun.tools.javac.main.Option;
    45 import com.sun.tools.javac.main.Option;
       
    46 import com.sun.tools.javac.util.BaseFileManager;
    46 import com.sun.tools.javac.util.ClientCodeException;
    47 import com.sun.tools.javac.util.ClientCodeException;
    47 import com.sun.tools.javac.util.Context;
    48 import com.sun.tools.javac.util.Context;
    48 import com.sun.tools.javac.util.DefinedBy;
    49 import com.sun.tools.javac.util.DefinedBy;
    49 import com.sun.tools.javac.util.DefinedBy.Api;
    50 import com.sun.tools.javac.util.DefinedBy.Api;
    50 import com.sun.tools.javac.util.Log;
    51 import com.sun.tools.javac.util.Log;
   149             if (out == null)
   150             if (out == null)
   150                 context.put(Log.outKey, new PrintWriter(System.err, true));
   151                 context.put(Log.outKey, new PrintWriter(System.err, true));
   151             else
   152             else
   152                 context.put(Log.outKey, new PrintWriter(out, true));
   153                 context.put(Log.outKey, new PrintWriter(out, true));
   153 
   154 
   154             if (fileManager == null)
   155             if (fileManager == null) {
   155                 fileManager = getStandardFileManager(diagnosticListener, null, null);
   156                 fileManager = getStandardFileManager(diagnosticListener, null, null);
       
   157                 if (fileManager instanceof BaseFileManager) {
       
   158                     ((BaseFileManager) fileManager).autoClose = true;
       
   159                 }
       
   160             }
   156             fileManager = ccw.wrap(fileManager);
   161             fileManager = ccw.wrap(fileManager);
   157 
   162 
   158             context.put(JavaFileManager.class, fileManager);
   163             context.put(JavaFileManager.class, fileManager);
   159 
   164 
   160             Arguments args = Arguments.instance(context);
   165             Arguments args = Arguments.instance(context);