gpt4 book ai didi

java - Paranamer 不返回参数名称

转载 作者:行者123 更新时间:2023-12-01 23:45:08 24 4
gpt4 key购买 nike

我正在使用 paranamer.jar 来获取方法的参数名称。但它没有获取任何参数名称。

    Class c = Class.forName("com.soa1.MyClass");
Class[] argTypes = { java.lang.String.class };
Method method=ABC.class.getMethod("getData",argTypes);
Paranamer paranamer = new CachingParanamer();
String[] parameterNames = paranamer.lookupParameterNames(method,false);

最佳答案

参数名称是否来自某个地方?根据ParaNamer的文档,它使用了几种方式来获取参数名称:

  1. 通过 __PARANAMER_DATA 字段。显然,只有当你的类有这样的字段时,这才有效。
  2. 通过 .class 文件中的调试信息。显然,只有当您的类使用调试信息进行编译时,这才有效。
  3. 通过@Named注释。显然,只有当您的方法参数包含这样的注释时,这才有效。

如果这些都不适用于您的类,那么抱歉,参数名称将不可用。

关于java - Paranamer 不返回参数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17203980/

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