gpt4 book ai didi

java - 如何列出所有 JPMS 服务?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:33:39 26 4
gpt4 key购买 nike

如何列出所有模块的所有(!)JPMS 服务。我的意思是我需要当前运行 JVM 时可以使用的所有服务的列表。我在互联网上搜索过,但仍然找不到方法。

最佳答案

没有这样的命令,但你可以在命令行中组合一些东西来实现它。以下是在 Linux 上执行此操作的方法。

首先创建一个包含所有模块描述符的文件。 (您实际上不必这样做,您可以将其通过管道传输到其余部分,但那部分需要时间并且您可能更经常需要它们,因此存储它们是有意义的。)

java --list-modules
| sed -e 's/@.*//'
| xargs -n1 java --describe-module
> module-descriptors

这会列出所有模块,删除版本字符串,然后让 Java 描述每个模块,其中包括模块描述符(以及因此使用和提供的服务)。

下一步是仅对 uses 指令进行 grep,删除 uses 部分,并在删除重复项的同时对剩余的类型名称进行排序:

cat /opt/jdk-9/module-descriptors
| grep "uses"
| sed 's/uses //'
| sort -u

我已将输出放入 a gist .

关于java - 如何列出所有 JPMS 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48214468/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com