Colin Harrington

Flex Builder 3.0 Debugging issue – Unable to debug

by on Aug.19, 2008, under Flex, RIA

FlexI recently ran into an issue where Flex Builder 3.0 wouldn’t let me debug and caused my whole System (OSX) to grind to a halt.  It took me a while to get to the bottom of it, but I found the issue and addressed it. 

Basically Eclipse had this error –over and over and over and ove…100+MB worth :-) in the system.log
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]: !ENTRY com.adobe.flexbuilder.debug 4 2 2008-08-07 15:21:31.716
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]: !MESSAGE Problems occurred when invoking code from plug-in: "com.adobe.flexbuilder.debug".
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]: !STACK 0
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]: java.lang.NullPointerException
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.breakpoints.FlexLineBreakpoint.findSourceFiles(FlexLineBreakpoint.java:388)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.breakpoints.FlexLineBreakpoint.instantiate(FlexLineBreakpoint.java:442)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget.breakpointAdded(FlexDebugTarget.java:889)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$FdbThread.installDeferredBreakpoints(FlexDebugTarget.java:539)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$FdbThread.advanceStateMachine(FlexDebugTarget.java:570)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$FdbThread.access$6(FlexDebugTarget.java:544)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$1.run(FlexDebugTarget.java:646)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at org.eclipse.core.runtime.Platform.run(Platform.java:857)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$FdbThread.eventLoop(FlexDebugTarget.java:626)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at com.adobe.flexbuilder.debug.model.FlexDebugTarget$FdbThread.run(FlexDebugTarget.java:687)
Aug 17 15:21:31 machine-name [0x0-0xc30c3].org.eclipse.eclipse[8730]:     at java.lang.Thread.run(Thread.java:613)

A little googling turned up this article where the guy points to a setting in the mm.cfg.  Issue resolved?  Not so fast.  My issue had similar symptoms but was not identical.  After some trial and error I figured out that I had been building the SWFs in two different fasions: via ant and with Flex Builder.  So it turns out that Flex Builder was finding the SWFs built by my build files and going into a recurring NPE fit.  Flex Builder basically inundated the system.log to the point of no return.  I could have waited for 2 days, but I chose to manually rotate the log myself (which took some googling to turn up the right solution).

Hopefully Flex Builder 3.0 has fixed this.

Symptoms:
Flex Builder hangs when setting a breakpoint (can’t debug – Eclipse and the system goes ‘out-to-lunch’)

Solution:

  • Remove the duplicate swf’s or profiling versions
  • Your machine still out to lunch? (syslogd)   Then you will have to manually rotate your system log, since its too much for syslogd to handle.

sudo launchctl stop com.apple.syslogd && sudo mv /private/var/log/system.log ~/system.log.NPEFilled && sudo launchctl start com.apple.syslogd
(Stop syslogd, move the system.log file, start syslogd)

  • Happy Debugging!


Reasoning:
Flex Builder goes into a flurry of recurring java.lang.NullPointerExceptions when trying to resolve the source attachment when there are multiple versions of the same swf.  You won’t be able to debug or set a breakpoint.  If you do, Your system log will be overloaded because of the massive onslaught of NPEs reported by Eclipse/Flex Builder.  Syslogd tried to rotate the system log but it is just too large for it to handle after you’d let the recurring NPEs go on for a minute, so manually rotating the log seems like a good solution (got a better one?)

:, , ,

2 Comments for this entry

  • Filo

    Thanks for your help! I was having similar problems with not being able to debug flex projects. I deleted all old builds and started again with a debug build. I actually ended up creating a new mxml file and copying previous code into that. Then I made ran a debug build for this. Anyway it worked

  • Brenton Ivey

    Hi dude, what theme is your blog using? It’s incredible

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!