langtools/test/tools/javac/api/T6431879.java
changeset 27319 030080f03e4f
parent 5520 86e4b9a9da40
child 30730 d3ce7619db2c
equal deleted inserted replaced
27318:4660a5da7d90 27319:030080f03e4f
     1 /*
     1 /*
     2  * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    37 public class T6431879 {
    37 public class T6431879 {
    38     public static void main(String... args) throws IOException {
    38     public static void main(String... args) throws IOException {
    39         String testSrc = System.getProperty("test.src", ".");
    39         String testSrc = System.getProperty("test.src", ".");
    40         String testClasses = System.getProperty("test.classes", ".");
    40         String testClasses = System.getProperty("test.classes", ".");
    41         JavacTool tool = JavacTool.create();
    41         JavacTool tool = JavacTool.create();
    42         StandardJavaFileManager fm = tool.getStandardFileManager(null, null, null);
    42         try (StandardJavaFileManager fm = tool.getStandardFileManager(null, null, null)) {
    43         Iterable<? extends JavaFileObject> files =
    43             Iterable<? extends JavaFileObject> files =
    44             fm.getJavaFileObjectsFromFiles(Arrays.asList(new File(testSrc, T6431879.class.getName()+".java")));
    44                 fm.getJavaFileObjectsFromFiles(Arrays.asList(new File(testSrc, T6431879.class.getName()+".java")));
    45         JavacTask task = tool.getTask(null, fm, null, null, null, files);
    45             JavacTask task = tool.getTask(null, fm, null, null, null, files);
    46         Iterable<? extends CompilationUnitTree> trees = task.parse();
    46             Iterable<? extends CompilationUnitTree> trees = task.parse();
    47         TreeScanner<Void,Trees> dependencyScanner = new DependencyScanner();
    47             TreeScanner<Void,Trees> dependencyScanner = new DependencyScanner();
    48         Trees treeUtil = Trees.instance(task);
    48             Trees treeUtil = Trees.instance(task);
    49         for (CompilationUnitTree unit : trees) {
    49             for (CompilationUnitTree unit : trees) {
    50             //System.err.println("scan " + unit);
    50                 //System.err.println("scan " + unit);
    51             dependencyScanner.scan(unit, treeUtil);
    51                 dependencyScanner.scan(unit, treeUtil);
       
    52             }
    52         }
    53         }
    53 
       
    54     }
    54     }
    55 
    55 
    56     private static class DependencyScanner<R,P> extends TreePathScanner<R,P> {
    56     private static class DependencyScanner<R,P> extends TreePathScanner<R,P> {
    57         public R visitIdentifier(IdentifierTree tree, P p) {
    57         public R visitIdentifier(IdentifierTree tree, P p) {
    58             //System.err.println(tree);
    58             //System.err.println(tree);