src/jdk.jlink/share/classes/module-info.java
author mr
Tue, 29 Oct 2019 08:26:55 -0700
changeset 58842 6c255334120d
parent 54950 46ae54c3026d
child 58921 d92acb18e300
permissions -rw-r--r--
8232080: jlink plugins for vendor information and run-time options Reviewed-by: ihse, alanb, kvn, bobv, mchung
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
36511
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     1
/*
54950
46ae54c3026d 8223663: Update links for tool guides
jjg
parents: 53923
diff changeset
     2
 * Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
36511
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     4
 *
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    10
 *
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    15
 * accompanied this code).
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    16
 *
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    20
 *
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    23
 * questions.
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    24
 */
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    25
44417
a431edba1629 8173303: Add module-subgraph images to main platform documentation
mchung
parents: 43185
diff changeset
    26
/**
45528
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    27
 * Defines the <em>{@index jlink jlink tool}</em> tool for creating run-time
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    28
 * images, the <em>{@index jmod jmod tool}</em> tool for creating and manipulating
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    29
 * JMOD files, and the <em>{@index jimage jimage tool}</em> tool for inspecting
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    30
 * the JDK implementation-specific container file for classes and resources.
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    31
 *
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    32
 * <p> This module provides the equivalent of command-line access to the
54950
46ae54c3026d 8223663: Update links for tool guides
jjg
parents: 53923
diff changeset
    33
 * <em>jlink</em> and <em>jmod</em> tools via the
45528
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    34
 * {@link java.util.spi.ToolProvider ToolProvider} SPI.
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    35
 * Instances of the tools can be obtained by calling
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    36
 * {@link java.util.spi.ToolProvider#findFirst ToolProvider.findFirst}
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    37
 * or the {@link java.util.ServiceLoader service loader} with the name
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    38
 * {@code "jlink"} or {@code "jmod"} as appropriate.
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    39
 *
47349
5958eaae167a 8189262: jdk.jlink module-info.java javadoc comment refers to the non-existent jimage tool doc
sundar
parents: 47216
diff changeset
    40
 * <p> <em>jimage</em> only exists
45528
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    41
 * as a command-line tool, and does not provide any direct API.
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    42
 *
54950
46ae54c3026d 8223663: Update links for tool guides
jjg
parents: 53923
diff changeset
    43
 * @toolGuide jlink
46ae54c3026d 8223663: Update links for tool guides
jjg
parents: 53923
diff changeset
    44
 * @toolGuide jmod
45528
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    45
 *
1e8c2f062ad3 8181639: Add tool and services information to module summary
mchung
parents: 44417
diff changeset
    46
 * @provides java.util.spi.ToolProvider
44417
a431edba1629 8173303: Add module-subgraph images to main platform documentation
mchung
parents: 43185
diff changeset
    47
 *
a431edba1629 8173303: Add module-subgraph images to main platform documentation
mchung
parents: 43185
diff changeset
    48
 * @moduleGraph
a431edba1629 8173303: Add module-subgraph images to main platform documentation
mchung
parents: 43185
diff changeset
    49
 * @since 9
a431edba1629 8173303: Add module-subgraph images to main platform documentation
mchung
parents: 43185
diff changeset
    50
 */
36511
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    51
module jdk.jlink {
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    52
    requires jdk.internal.opt;
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    53
    requires jdk.jdeps;
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    54
39321
c60f34e8c057 8160641: PostProcessingPlugin and ExecutableImage should not be part of plugin API
sundar
parents: 38320
diff changeset
    55
    uses jdk.tools.jlink.plugin.Plugin;
36511
9d0388c6b336 8142968: Module System implementation
alanb
parents:
diff changeset
    56
42338
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    57
    provides java.util.spi.ToolProvider with
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    58
        jdk.tools.jmod.Main.JmodToolProvider,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    59
        jdk.tools.jlink.internal.Main.JlinkToolProvider;
41484
834b7539ada3 8164689: Retrofit jar, jlink, jmod as a ToolProvider
mchung
parents: 39491
diff changeset
    60
42338
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    61
    provides jdk.tools.jlink.plugin.Plugin with
53923
c431ab7f9e85 8218913: Rename --strip-debug jlink plugin
sgehwolf
parents: 50047
diff changeset
    62
        jdk.tools.jlink.internal.plugins.DefaultStripDebugPlugin,
c431ab7f9e85 8218913: Rename --strip-debug jlink plugin
sgehwolf
parents: 50047
diff changeset
    63
        jdk.tools.jlink.internal.plugins.StripJavaDebugAttributesPlugin,
42338
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    64
        jdk.tools.jlink.internal.plugins.ExcludePlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    65
        jdk.tools.jlink.internal.plugins.ExcludeFilesPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    66
        jdk.tools.jlink.internal.plugins.ExcludeJmodSectionPlugin,
42670
d833113eb7d7 8169925: Organize licenses by module in source, JMOD file, and run-time image
mchung
parents: 42338
diff changeset
    67
        jdk.tools.jlink.internal.plugins.LegalNoticeFilePlugin,
42703
20c39ea4a507 8170987: Module system implementation refresh (12/2016)
alanb
parents: 42338
diff changeset
    68
        jdk.tools.jlink.internal.plugins.SystemModulesPlugin,
42338
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    69
        jdk.tools.jlink.internal.plugins.StripNativeCommandsPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    70
        jdk.tools.jlink.internal.plugins.OrderResourcesPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    71
        jdk.tools.jlink.internal.plugins.DefaultCompressPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    72
        jdk.tools.jlink.internal.plugins.ExcludeVMPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    73
        jdk.tools.jlink.internal.plugins.IncludeLocalesPlugin,
a60f280f803c 8169069: Module system implementation refresh (11/2016)
alanb
parents: 41561
diff changeset
    74
        jdk.tools.jlink.internal.plugins.GenerateJLIClassesPlugin,
58842
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    75
        jdk.tools.jlink.internal.plugins.ReleaseInfoPlugin,
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    76
        jdk.tools.jlink.internal.plugins.AddOptionsPlugin,
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    77
        jdk.tools.jlink.internal.plugins.VendorBugURLPlugin,
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    78
        jdk.tools.jlink.internal.plugins.VendorVMBugURLPlugin,
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    79
        jdk.tools.jlink.internal.plugins.VendorVersionPlugin;
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    80
6c255334120d 8232080: jlink plugins for vendor information and run-time options
mr
parents: 54950
diff changeset
    81
}