启用的javac调试Apache的ANT(Enabling javac debugging for

2019-07-30 21:03发布

只是一个简单的问题。 对于ANT建立,如果我离开了debuglevel参数完全脱离将其与所有调试信息编译? 还是会更好,包括debuglevel="lines,vars,source"的javac任务? 我想启用调试可能的最高水平。 这里有一个片段:

<javac srcdir="${dir.source}"
     destdir="${dir.classes}"
     deprecation="${javac.deprecation}"
     debug="${veracode.release.mode}"
     debuglevel="lines,vars,source" <-- should I leave this line out? -->
     optimize="${javac.optimize}">

Answer 1:

简短的回答:是的,你可以离开debuglevel属性了,只要你设置debug属性为true

javac Ant task文档:

调试

指示是否来源应调试信息进行编译; 默认为关闭。 如果设置为off,-g:无将用于支持它的编译器在命令行上被传递(对于其他的编译器,没有命令行参数将被使用)。 如果设置为真,则DEBUGLEVEL属性的值确定该命令行参数。

DEBUGLEVEL

关键字列表被追加到-g命令行开关。 这将通过除现代,经典的所有实现被忽略(版本> = 1.2)和jikes的。 合法值是无或逗号分隔的以下关键字列表:线,VARS和源。 如果没有指定DEBUGLEVEL,默认情况下,什么都不会被追加到-g。 如果调试未打开,此属性将被忽略。

因此,设置debugtrue并省略debugLevel相同传递标志-g没有附加选项。 根据javac文档,使-g什么也没有标志所附等同于指定来源,线和VARS。



文章来源: Enabling javac debugging for Apache ANT