mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 02:24:40 +02:00
8182416: Clean up module-info.java like move requires transitive adjacent to exports
Reviewed-by: alanb
This commit is contained in:
parent
beba252b47
commit
960807e246
6 changed files with 75 additions and 44 deletions
|
@ -25,10 +25,12 @@
|
|||
|
||||
/**
|
||||
* Defines the Language Model, Annotation Processing, and Java Compiler APIs.
|
||||
* <P>
|
||||
* <p>
|
||||
* These APIs model declarations and types of the Java programming language,
|
||||
* and define interfaces for tools such as compilers which can be invoked
|
||||
* from a program.
|
||||
* <p>
|
||||
* This module is upgradeble.
|
||||
*
|
||||
* @moduleGraph
|
||||
* @since 9
|
||||
|
|
|
@ -88,6 +88,7 @@ module jdk.compiler {
|
|||
exports com.sun.source.tree;
|
||||
exports com.sun.source.util;
|
||||
exports com.sun.tools.javac;
|
||||
|
||||
exports com.sun.tools.doclint to
|
||||
jdk.javadoc;
|
||||
exports com.sun.tools.javac.api to
|
||||
|
@ -127,16 +128,16 @@ module jdk.compiler {
|
|||
uses com.sun.source.util.Plugin;
|
||||
uses com.sun.tools.javac.platform.PlatformProvider;
|
||||
|
||||
provides java.util.spi.ToolProvider
|
||||
with com.sun.tools.javac.main.JavacToolProvider;
|
||||
provides java.util.spi.ToolProvider with
|
||||
com.sun.tools.javac.main.JavacToolProvider;
|
||||
|
||||
provides com.sun.tools.javac.platform.PlatformProvider
|
||||
with com.sun.tools.javac.platform.JDKPlatformProvider;
|
||||
provides com.sun.tools.javac.platform.PlatformProvider with
|
||||
com.sun.tools.javac.platform.JDKPlatformProvider;
|
||||
|
||||
provides javax.tools.JavaCompiler
|
||||
with com.sun.tools.javac.api.JavacTool;
|
||||
provides javax.tools.JavaCompiler with
|
||||
com.sun.tools.javac.api.JavacTool;
|
||||
|
||||
provides javax.tools.Tool
|
||||
with com.sun.tools.javac.api.JavacTool;
|
||||
provides javax.tools.Tool with
|
||||
com.sun.tools.javac.api.JavacTool;
|
||||
}
|
||||
|
||||
|
|
|
@ -58,9 +58,10 @@
|
|||
* @since 9
|
||||
*/
|
||||
module jdk.javadoc {
|
||||
requires java.xml;
|
||||
|
||||
requires transitive java.compiler;
|
||||
requires transitive jdk.compiler;
|
||||
requires java.xml;
|
||||
|
||||
exports com.sun.javadoc;
|
||||
exports com.sun.tools.doclets;
|
||||
|
@ -69,13 +70,13 @@ module jdk.javadoc {
|
|||
|
||||
exports jdk.javadoc.doclet;
|
||||
|
||||
provides java.util.spi.ToolProvider
|
||||
with jdk.javadoc.internal.tool.JavadocToolProvider;
|
||||
provides java.util.spi.ToolProvider with
|
||||
jdk.javadoc.internal.tool.JavadocToolProvider;
|
||||
|
||||
provides javax.tools.DocumentationTool
|
||||
with jdk.javadoc.internal.api.JavadocTool;
|
||||
provides javax.tools.DocumentationTool with
|
||||
jdk.javadoc.internal.api.JavadocTool;
|
||||
|
||||
provides javax.tools.Tool
|
||||
with jdk.javadoc.internal.api.JavadocTool;
|
||||
provides javax.tools.Tool with
|
||||
jdk.javadoc.internal.api.JavadocTool;
|
||||
}
|
||||
|
||||
|
|
|
@ -203,12 +203,30 @@ public class ModuleInfoBuilder {
|
|||
writer.format("%smodule %s {%n", open ? "open " : "", md.name());
|
||||
|
||||
Map<String, Module> modules = configuration.getModules();
|
||||
// first print the JDK modules
|
||||
md.requires().stream()
|
||||
.filter(req -> !req.name().equals("java.base")) // implicit requires
|
||||
|
||||
// first print requires
|
||||
Set<Requires> reqs = md.requires().stream()
|
||||
.filter(req -> !req.name().equals("java.base") && req.modifiers().isEmpty())
|
||||
.collect(Collectors.toSet());
|
||||
reqs.stream()
|
||||
.sorted(Comparator.comparing(Requires::name))
|
||||
.forEach(req -> writer.format(" requires %s;%n",
|
||||
toString(req.modifiers(), req.name())));
|
||||
if (!reqs.isEmpty()) {
|
||||
writer.println();
|
||||
}
|
||||
|
||||
// requires transitive
|
||||
reqs = md.requires().stream()
|
||||
.filter(req -> !req.name().equals("java.base") && !req.modifiers().isEmpty())
|
||||
.collect(Collectors.toSet());
|
||||
reqs.stream()
|
||||
.sorted(Comparator.comparing(Requires::name))
|
||||
.forEach(req -> writer.format(" requires %s;%n",
|
||||
toString(req.modifiers(), req.name())));
|
||||
if (!reqs.isEmpty()) {
|
||||
writer.println();
|
||||
}
|
||||
|
||||
if (!open) {
|
||||
md.exports().stream()
|
||||
|
@ -218,6 +236,10 @@ public class ModuleInfoBuilder {
|
|||
})
|
||||
.sorted(Comparator.comparing(Exports::source))
|
||||
.forEach(exp -> writer.format(" exports %s;%n", exp.source()));
|
||||
|
||||
if (!md.exports().isEmpty()) {
|
||||
writer.println();
|
||||
}
|
||||
}
|
||||
|
||||
md.provides().stream()
|
||||
|
@ -230,6 +252,9 @@ public class ModuleInfoBuilder {
|
|||
";")))
|
||||
.forEach(writer::println);
|
||||
|
||||
if (!md.provides().isEmpty()) {
|
||||
writer.println();
|
||||
}
|
||||
writer.println("}");
|
||||
}
|
||||
|
||||
|
|
|
@ -59,6 +59,7 @@
|
|||
module jdk.jdeps {
|
||||
requires java.compiler;
|
||||
requires jdk.compiler;
|
||||
|
||||
exports com.sun.tools.classfile to jdk.jlink;
|
||||
|
||||
provides java.util.spi.ToolProvider with
|
||||
|
|
|
@ -65,27 +65,28 @@
|
|||
* @since 9
|
||||
*/
|
||||
module jdk.jshell {
|
||||
requires transitive java.compiler;
|
||||
requires transitive jdk.jdi;
|
||||
requires transitive java.prefs;
|
||||
requires java.logging;
|
||||
requires jdk.compiler;
|
||||
requires jdk.internal.le;
|
||||
requires jdk.internal.ed;
|
||||
requires jdk.internal.le;
|
||||
requires jdk.internal.opt;
|
||||
|
||||
requires transitive java.compiler;
|
||||
requires transitive java.prefs;
|
||||
requires transitive jdk.jdi;
|
||||
|
||||
exports jdk.jshell;
|
||||
exports jdk.jshell.spi;
|
||||
exports jdk.jshell.execution;
|
||||
exports jdk.jshell.spi;
|
||||
exports jdk.jshell.tool;
|
||||
|
||||
uses jdk.jshell.spi.ExecutionControlProvider;
|
||||
uses jdk.internal.editor.spi.BuildInEditorProvider;
|
||||
|
||||
provides javax.tools.Tool
|
||||
with jdk.internal.jshell.tool.JShellToolProvider;
|
||||
provides jdk.jshell.spi.ExecutionControlProvider
|
||||
with jdk.jshell.execution.JdiExecutionControlProvider,
|
||||
provides javax.tools.Tool with
|
||||
jdk.internal.jshell.tool.JShellToolProvider;
|
||||
provides jdk.jshell.spi.ExecutionControlProvider with
|
||||
jdk.jshell.execution.JdiExecutionControlProvider,
|
||||
jdk.jshell.execution.LocalExecutionControlProvider,
|
||||
jdk.jshell.execution.FailOverExecutionControlProvider;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue