Debugging: using eclipseME or whatever .. ?

i really need a way to debug my midlets like debugging on normal applications. does anyone have made that successfully ?
i tried to use eclipseME but i have massive problems with it …

Have you tried NetBeans 4.0?
http://www.netbeans.org/kb/articles/mobility.html

I use eclipse ME and the Nokia Development Suite ver 2.1 or .2. One of the options of eclipse ME/NDS allows the addition of a very very helpful debug screen that catches all the sys.out calls.

I’ve found the above more than meet my needs in my daily development circles. Though, I’m all ears for any hints and tips as to tool optimisations.

Cheers,

ribot

i use a full bunch of emulators, some of them support the debug console (i have no clue why some dont do it). but debug consoles are not real step-by-step debuggin with a display of the whole heap usage and content.
like i said, i never got eclipseMe debugging to work

Point taken - so are you still using Eclipse for development?

yes, i still use my (now beloved) eclipse.
but since i started to develope on handset devices there have been a few problems which really slow your working speed down:

first of all no general debugger (instead compiling over ant and testing over and over again in emulator or real device) and the bad integration of some open source projects in eclipse. especially i have antenna in mind. i really need it (though its features are more than incomplete) but some lines of preprocessing code can screw eclipse massively up:
code completion, refactoring etc.

[quote]but some lines of preprocessing code can screw eclipse massively up: code completion, refactoring etc.
[/quote]
The same happens with NetBeans 3.6 - does anyone knows if it is fixed in NetBeans 4?

There is a big difference between NB 3.6 and 4.0, especially in J2ME area. 4.0 uses a preprocessor and it is very well integrated. You can easily switch between preprocessor configurations, you can build all configurations in one click, code completion, debugger work well.

See the screenshot:
http://www.netbeans.org/images/screenshots/4.0/marv_miner.jpg

And tutorial:
http://www.netbeans.org/kb/articles/tutorial-j2mefragmentation-40.html

This probably doesn’t help you much but we developed our own emulator - still some way to go to cover all apis.

However, for “logical” debugging it rocks. You can run your midlet in process from within Eclipse and its FAST. You know how all those emulators from Sony/Samsung/Sun - even the S60 ones - drag their feet … this blows them away. It makes the s40 emulator look sluggish.

The emphasis here tho is on logical debugging.

So :

  1. You can make sure game logic/collisions etc work
  2. You can verify that the application complies with device behaviour (key codes etc).

but

  1. Heap profiling is out - well tbh even with the Nokia emulators this is touch and go.
  2. Speed testing is unrepresentative.
  3. We haven’t sorted all the font issues yet … so font behaviour is off (but then I haven’t found an emulator that does this properly yet anyway).

It makes a huge difference tho for getting the application to a state where you’re confident wierd behaviour on the device - is the device’s fault.

Huys,

If you use Eclipse/EclipseME, you can debug your midlets. From the docs at EclipseME plugin site, what you have to do is set the debugger timeout for at least 15000 ms (Window->Preferences->Java->Debug).

It’s not perfect tough. Actually is quite buggy. Sometimes the debugger will not show any signs of activity and Eclipse will not be able to stop the midlet from running.

But sometimes it works. It’s a start. Maybe they will improve debugging in later versions.