如何通过命令行了解java包

问题描述 投票:0回答:3

有没有办法通过一行命令知道一个类与哪个java包相关? 例如,我想打印出 Integer 类的包,即 java.lang.Integer

谢谢

java package
3个回答
2
投票

编辑:有一个我不知道的

class.getPackage()
方法。

System.out.println(Integer.class.getPackage().getName());

0
投票

如果我理解正确,您希望能够使用 SimpleName 搜索类,然后打印包名称。或者至少打印所有可能的匹配项(在多个包中找到)。

如果是这种情况,您可以利用该代码片段(在here找到)自己创建一个实用程序并从命令行执行。不过这可能有点慢。


0
投票

快速简单的解决方案,只需滥用

classlist
文件即可。当然,不能保证找到所有类,但应该可以完成标准情况的工作。

X:\Java ◄●++●► classlist.bat hashset
java/util/HashSet
java/util/LinkedHashSet
java/util/regex/IntHashSet

X:\Java ◄●++●► classlist.bat stringb
java/lang/AbstractStringBuilder
java/lang/StringBuffer
java/lang/StringBuilder

X:\Java ◄●++●► classlist.bat "reader writer"
…

X:\Java ◄●++●► type classlist.bat
@FINDSTR/I %* "C:\Program Files\Java\jdk-19\lib\classlist" | FINDSTR /VB "@ #"

classlist
文件的路径替换为您系统上的路径。您当然可以根据需要修改第二个
findstr
以删除更多行,例如与
jdk/internal
有关的所有内容。

© www.soinside.com 2019 - 2024. All rights reserved.