在eclipse和命令行中运行javac ant时的类文件大小差异

2wnc66cl  于 12个月前  发布在  Eclipse
关注(0)|答案(4)|浏览(200)

我用ant javac运行java代码。我在eclipse和命令行中运行了ant script。但是Java类文件的大小不同。你能解释一下为什么在eclipse和命令行中使用javac ant script时会有大小错误吗?我怎么解决这个问题?

jq6vz3qz

jq6vz3qz1#

据我所知,Java编译器可能会也可能不会在字节码中包含以下内容:

  • Java注解
  • Javadoc特定信息

调用时实际的 javac 参数之间应该有差异。检查Ant的config和 javac 的默认参数值。目标Java平台版本可能也不同,这会导致.class文件大小的差异。
如果使用了多个JDK,当然也意味着不同的类文件大小。

zvms9eto

zvms9eto2#

javac默认情况下只在调试信息中生成行号(参见javac -g)。在Eclipse中,编译器类文件生成选项中的所有变量、行和源都是启用的。

2ledvvac

2ledvvac3#

没有什么需要“解决”的; Eclipse使用它自己内置的增量编译器,编译器从相同的程序中产生稍微不同的输出是很常见的。

wdebmtf2

wdebmtf24#

如果您在使用ANT编译的类文件中遇到任何歧义,这是因为ANT的javac在默认情况下将调试模式设置为false。
转折
debug=“true”
在javac的ANT脚本将生成相同的类文件,这是生成与maven或正常javac在cmd。

相关问题