本文主要是介绍Java代码提示参数名称无意义(如,arg0)的原因及解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
【现象描述】
Java 源码在用Ant脚本打成jar 之后,再被调用 时 ,Eclipse代码提示中方法的参数 名称是无意义的( arg0 、 arg1 ),开发人员看不出每个参数的业务意义是什么,很不方便 (如下图):
而以源码方式调用的提示结果是有业务意义的( queryHQL 、 page ) (如下图):
而我们也见过一些 Jar 包在调用时是可以提示有意义的参数名称的。
【原因分析】
Sun和Eclipse提供的Java编译器 是有差异的,以下方面的方法为例:
——————————————————————————————————
public class API2 {
public void getName(String name,int id){}
}
——————————————————————————————————
通过Eclipse编译后的Class文件中是带有参数实际名称的(如下图):
而时直接使用Sun提供的默认编译器(javac),该javac编译后的Class文件中确实丢失了参数的实际名称(如下图):
【解决方案】
1、直接使用Eclipse导出jar包;
2、如果用ant打包,则需要指定使用Eclipse提供的Java编译器进行编译之后再打包(如下图):
这篇关于Java代码提示参数名称无意义(如,arg0)的原因及解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!