Debugging JavaFX
Tom Eugelink
tbee at tbee.org
Thu Jul 18 06:08:51 UTC 2019
Hm. Being able to just debug JavaFX will seriously lower the threshold for people to get on board. Personally if I run into a library that is behaving faulty and I need to download and compile it first, I'm already not very happy (it's a hassle). But ahm... cygwin, visual studio, directshow header files (on windows) is not "just type gradle".
On 18-7-2019 06:45, Robert Lichtenberger wrote:
> Thanks for the information. Maybe something in my setup was wrong. I'd also
> appreciate if the default builds would contain debug information, this
> would make JavaFX much more "developer friendly".
>
> Robert
>
> Am Do., 18. Juli 2019 um 00:04 Uhr schrieb Kevin Rushforth <
> kevin.rushforth at oracle.com>:
>
>> I did a quick test and the difference in size is noticeable, but not
>> huge -- on the order of 10% larger with the local symbols. You could
>> file an enhancement to have a binary available with the local symbols
>> (or to add them to the default build), but I don't know whether it's
>> generally useful enough to justify it. Maybe Johan can weigh in on this
>> one?
>>
>> -- Kevin
>>
>>
>> On 7/17/2019 1:50 PM, Tom Eugelink wrote:
>>> I think I saw that one of the argument for not providing debug symbols
>>> was size... If there is anything I would not quickly compromise on
>>> nowadays is size. Even my smartwatch has gigabytes of internal
>>> storage. If size is an issue for an application, it is usually not
>>> caused by including debug symbols in a jar.
>>>
>>>
>>> On 17-7-2019 21:01, Tom Schindl wrote:
>>>> Well the main problem is that if there are no local var you can not set
>>>> conditional break points in the code, inject syserr logging to
>>>> understand what is going on and what your code does to FX.
>>>>
>>>> One could provide 2 artifacts one with and one without debug symbols.
>>>>
>>>> Tom
>>>>
>>>> On 17.07.19 19:12, Kevin Rushforth wrote:
>>>>> Mainly size. Generally if a developer is going to debug JavaFX to point
>>>>> of wanting to look at local variables, it doesn't seem a stretch for
>>>>> them to build JavaFX.
>>>>>
>>>>> -- Kevin
>>>>>
>>>>>
>>>>> On 7/17/2019 9:57 AM, Tom Schindl wrote:
>>>>>> so what is the reason to strip them (i guess it it size) it is
>>>>>> extremely
>>>>>> painful to don't see local-variables, have parameter names, arg1,arg2,
>>>>>> ... .
>>>>>>
>>>>>> Tom
>>>>>>
>>>>>> On 17.07.19 17:01, Kevin Rushforth wrote:
>>>>>>> When you say that don't see a problem, what exactly do you mean?
>>>>>>> If you
>>>>>>> are able to see the local variables in a production build, then that
>>>>>>> would in fact be surprising. The production builds, including EA
>>>>>>> builds,
>>>>>>> should be being built with "-PCONF=Release" which would exclude vars.
>>>>>>> Someone from Gluon should confirm.
>>>>>>>
>>>>>>> -- Kevin
>>>>>>>
>>>>>>>
>>>>>>> On 7/17/2019 7:56 AM, Michael Paus wrote:
>>>>>>>> Hi,
>>>>>>>> I don't see any problem of that kind with Eclipse, on MacOS, JavaFX
>>>>>>>> 13-ea 9 via Maven.
>>>>>>>> Michael
>>>>>>>>
>>>>>>>> Am 17.07.19 um 16:45 schrieb Kevin Rushforth:
>>>>>>>>> That should have been enough to enable local variable symbols. We
>>>>>>>>> have the following logic for JavaCompile tasks:
>>>>>>>>>
>>>>>>>>> compile.options.debugOptions.debugLevel = IS_DEBUG_JAVA ?
>>>>>>>>> "source,lines,vars" : "source,lines"
>>>>>>>>>
>>>>>>>>> IS_DEBUG_JAVA is true if CONF is either Debug or DebugNative.
>>>>>>>>>
>>>>>>>>> Maybe something else is stripping out the symbols.
>>>>>>>>>
>>>>>>>>> Has anyone else debugged JavaFX recently and tried to look at local
>>>>>>>>> vars? If not, I'll take a quick look later today.
>>>>>>>>>
>>>>>>>>> -- Kevin
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 7/17/2019 7:38 AM, Robert Lichtenberger wrote:
>>>>>>>>>> I'm trying to get to the bottom of some weird layout problems
>>>>>>>>>> in my
>>>>>>>>>> application.
>>>>>>>>>>
>>>>>>>>>> To that end I want/need to debug JavaFX classes.
>>>>>>>>>>
>>>>>>>>>> But when I step into JavaFX classes I don't see local variables or
>>>>>>>>>> parameter names.
>>>>>>>>>>
>>>>>>>>>> So I thought debug symbols are probably stripped from the official
>>>>>>>>>> builds.
>>>>>>>>>>
>>>>>>>>>> I rolled my own and tried
>>>>>>>>>>
>>>>>>>>>> CONF = Debug
>>>>>>>>>>
>>>>>>>>>> and
>>>>>>>>>>
>>>>>>>>>> CONF = DebugNative
>>>>>>>>>>
>>>>>>>>>> in gradle.properties, recompiled OpenJFX and integrated the
>>>>>>>>>> libraries
>>>>>>>>>> into a little eclipse testproject.
>>>>>>>>>>
>>>>>>>>>> But I still don't see parameter names or local variables.
>>>>>>>>>>
>>>>>>>>>> Is there something else I need to do in order to see them?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Best regards,
>>>>>>>>>>
>>>>>>>>>> Robert
>>>>>>>>>>
>>>>>>>>>>
>>
More information about the openjfx-dev
mailing list