author | simonis |
Tue, 28 Nov 2017 14:20:15 +0100 | |
changeset 48143 | 4c8451a12e79 |
parent 47702 | cf8310446245 |
child 48323 | 23d427d8a1ff |
permissions | -rw-r--r-- |
36526 | 1 |
/* |
45680
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
2 |
* Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. |
36526 | 3 |
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 |
* |
|
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 |
|
7 |
* published by the Free Software Foundation. Oracle designates this |
|
8 |
* particular file as subject to the "Classpath" exception as provided |
|
9 |
* by Oracle in the LICENSE file that accompanied this code. |
|
10 |
* |
|
11 |
* This code is distributed in the hope that it will be useful, but WITHOUT |
|
12 |
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
13 |
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
14 |
* version 2 for more details (a copy is included in the LICENSE file that |
|
15 |
* accompanied this code). |
|
16 |
* |
|
17 |
* You should have received a copy of the GNU General Public License version |
|
18 |
* 2 along with this work; if not, write to the Free Software Foundation, |
|
19 |
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
20 |
* |
|
21 |
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
|
22 |
* or visit www.oracle.com if you need additional information or have any |
|
23 |
* questions. |
|
24 |
*/ |
|
25 |
||
45680
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
26 |
/** |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
27 |
* Defines the implementation of the |
45796 | 28 |
* {@linkplain javax.tools.ToolProvider#getSystemJavaCompiler system Java compiler} |
45680
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
29 |
* and its command line equivalent, <em>{@index javac javac tool}</em>, |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
30 |
* as well as <em>{@index javah javah tool}</em>. |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
31 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
32 |
* <h2 style="font-family:'DejaVu Sans Mono', monospace; font-style:italic">javac</h2> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
33 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
34 |
* <p> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
35 |
* This module provides the equivalent of command-line access to <em>javac</em> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
36 |
* via the {@link java.util.spi.ToolProvider ToolProvider} and |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
37 |
* {@link javax.tools.Tool} service provider interfaces (SPIs), |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
38 |
* and more flexible access via the {@link javax.tools.JavaCompiler JavaCompiler} |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
39 |
* SPI.</p> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
40 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
41 |
* <p> Instances of the tools can be obtained by calling |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
42 |
* {@link java.util.spi.ToolProvider#findFirst ToolProvider.findFirst} |
45796 | 43 |
* or the {@linkplain java.util.ServiceLoader service loader} with the name |
45680
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
44 |
* {@code "javac"}. |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
45 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
46 |
* <p> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
47 |
* In addition, instances of {@link javax.tools.JavaCompiler.CompilationTask} |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
48 |
* obtained from {@linkplain javax.tools.JavaCompiler JavaCompiler} can be |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
49 |
* downcast to {@link com.sun.source.util.JavacTask JavacTask} for access to |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
50 |
* lower level aspects of <em>javac</em>, such as the |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
51 |
* {@link com.sun.source.tree Abstract Syntax Tree} (AST).</p> |
43862
a9b0f76e15bf
8174695: Fix @since in module-info.java in dev/langtools repo
mli
parents:
42498
diff
changeset
|
52 |
* |
45680
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
53 |
* <p>This module uses the {@link java.nio.file.spi.FileSystemProvider |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
54 |
* FileSystemProvider} API to locate file system providers. In particular, |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
55 |
* this means that a jar file system provider, such as that in the |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
56 |
* {@code jdk.zipfs} module, must be available if the compiler is to be able |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
57 |
* to read JAR files. |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
58 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
59 |
* <h2 style="font-family:'DejaVu Sans Mono', monospace; font-style:italic">javah</h2> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
60 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
61 |
* <p> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
62 |
* <em>javah</em> only exists as a command line tool, and does not provide any |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
63 |
* direct API. As of JDK 9, it has been deprecated. |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
64 |
* Use the {@code -h} option in <em>javac</em> instead.</p> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
65 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
66 |
* <dl style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif"> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
67 |
* <dt class="simpleTagLabel">Tool Guides: |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
68 |
* <dd>{@extLink javac_tool_reference javac}, |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
69 |
* {@extLink javah_tool_reference javah} |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
70 |
* </dl> |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
71 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
72 |
* @provides java.util.spi.ToolProvider |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
73 |
* @provides com.sun.tools.javac.platform.PlatformProvider |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
74 |
* @provides javax.tools.JavaCompiler |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
75 |
* @provides javax.tools.Tool |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
76 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
77 |
* @uses javax.annotation.processing.Processor |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
78 |
* @uses com.sun.source.util.Plugin |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
79 |
* @uses com.sun.tools.javac.platform.PlatformProvider |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
80 |
* |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
81 |
* @moduleGraph |
6a7b5298fcf5
8181825: Add tool and services information to module summary
jjg
parents:
44452
diff
changeset
|
82 |
* @since 9 |
40507
4413083331c7
8162576: Missing doclint check missing for modules
sadayapalam
parents:
36991
diff
changeset
|
83 |
*/ |
36526 | 84 |
module jdk.compiler { |
42407
f3702cff2933
8169069: Module system implementation refresh (11/2016)
alanb
parents:
41865
diff
changeset
|
85 |
requires transitive java.compiler; |
36526 | 86 |
|
87 |
exports com.sun.source.doctree; |
|
88 |
exports com.sun.source.tree; |
|
89 |
exports com.sun.source.util; |
|
90 |
exports com.sun.tools.javac; |
|
45684
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
91 |
|
36526 | 92 |
exports com.sun.tools.doclint to |
93 |
jdk.javadoc; |
|
94 |
exports com.sun.tools.javac.api to |
|
95 |
jdk.javadoc, |
|
96 |
jdk.jshell; |
|
97 |
exports com.sun.tools.javac.code to |
|
98 |
jdk.javadoc, |
|
99 |
jdk.jshell; |
|
100 |
exports com.sun.tools.javac.comp to |
|
101 |
jdk.javadoc, |
|
102 |
jdk.jshell; |
|
103 |
exports com.sun.tools.javac.file to |
|
104 |
jdk.jdeps, |
|
105 |
jdk.javadoc; |
|
106 |
exports com.sun.tools.javac.jvm to |
|
107 |
jdk.javadoc; |
|
108 |
exports com.sun.tools.javac.main to |
|
47268
48ec75306997
8177466: Add compiler support for local variable type-inference
mcimadamore
parents:
47216
diff
changeset
|
109 |
jdk.javadoc, |
48ec75306997
8177466: Add compiler support for local variable type-inference
mcimadamore
parents:
47216
diff
changeset
|
110 |
jdk.jshell; |
36526 | 111 |
exports com.sun.tools.javac.model to |
112 |
jdk.javadoc; |
|
113 |
exports com.sun.tools.javac.parser to |
|
114 |
jdk.jshell; |
|
115 |
exports com.sun.tools.javac.platform to |
|
47702
cf8310446245
8139607: -release option forces StandardJavaFileManager
jlahoda
parents:
47268
diff
changeset
|
116 |
jdk.jdeps, |
36526 | 117 |
jdk.javadoc; |
118 |
exports com.sun.tools.javac.tree to |
|
119 |
jdk.javadoc, |
|
120 |
jdk.jshell; |
|
121 |
exports com.sun.tools.javac.util to |
|
122 |
jdk.jdeps, |
|
123 |
jdk.javadoc, |
|
124 |
jdk.jshell; |
|
41865 | 125 |
exports jdk.internal.shellsupport.doc to |
126 |
jdk.jshell, |
|
127 |
jdk.scripting.nashorn.shell; |
|
36526 | 128 |
|
129 |
uses javax.annotation.processing.Processor; |
|
130 |
uses com.sun.source.util.Plugin; |
|
131 |
uses com.sun.tools.javac.platform.PlatformProvider; |
|
132 |
||
45684
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
133 |
provides java.util.spi.ToolProvider with |
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
134 |
com.sun.tools.javac.main.JavacToolProvider; |
41448 | 135 |
|
45684
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
136 |
provides com.sun.tools.javac.platform.PlatformProvider with |
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
137 |
com.sun.tools.javac.platform.JDKPlatformProvider; |
36526 | 138 |
|
45684
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
139 |
provides javax.tools.JavaCompiler with |
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
140 |
com.sun.tools.javac.api.JavacTool; |
42498 | 141 |
|
45684
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
142 |
provides javax.tools.Tool with |
2c5f2779c3d1
8182416: Clean up module-info.java like move requires transitive adjacent to exports
mchung
parents:
45680
diff
changeset
|
143 |
com.sun.tools.javac.api.JavacTool; |
36526 | 144 |
} |
145 |