Internal limits reached when Debugging on Simulator with Android Studio

Hello,

I’m working with the following sample in Android Studio 2023.3.1: GitHub - MicroEJ/Example-Java-Widget at 8.1.0

I’m getting the following error when trying to debug the application on Simulator:

=============== [ Initialization Stage ] ===============
=============== [ Converting fonts ] ===============
=============== [ Converting images ] ===============
=============== [ Launching on Simulator ] ===============
"Internal limits reached."
See error log file: C:\Users\Fab\AppData\Local\Temp\microej\s3\s3_1720450958372.log
<===========--> 87% EXECUTING [2m 57s]
> :runOnSimulator

Here is an extract of s3_1720450958372.log:

java.lang.NullPointerException
	at ist.s3.debug.req.ClassPrepareEventRequest.eventRequestCompleted(ClassPrepareEventRequest.java:14)
	at ist.s3.debug.EventFilter.finalizeEventRequest(EventFilter.java:307)
	at ist.s3.lang.java.JavaNativesPoolDebug.EventDispatcher_finalizeEventRequest(JavaNativesPoolDebug.java:2168)
	at ist.s3.lang.java.JavaNativesPoolDebug.invokeNative(JavaNativesPoolDebug.java:633)
	at ist.s3.load.Loader.invokeNative(Loader.java:1136)
	at ist.s3.proc.Interpretor.invokeNative(Interpretor.java:1470)
	at ist.s3.proc.Interpretor.invokeMethod(Interpretor.java:1205)
	at ist.s3.proc.Interpretor.invokestatic(Interpretor.java:1927)
	at ist.s3.proc.Interpretor.run(Interpretor.java:5030)
	at ist.s3.proc.Interpretor.Run(Interpretor.java:3122)
	at ist.s3.threads.S3InterpretedThread$1.call(S3InterpretedThread.java:53)
	at icetea.os.internal.InternThread$1.run(InternThread.java:147)
	at java.base/java.lang.Thread.run(Thread.java:829)

I followed the steps described in SDK6 Developer Guide: Run on Simulator — MicroEJ Documentation

What did I miss?

Regards,
Fabrice

Hello Fabrice,

The Example-Java-Widget (8.1.0) depends on the VEE Port for STM32F7508-DK 2.2.0.
This VEE Port version integrates MicroEJ Architecture 8.0.0.
See: VEEPort-STMicroelectronics-STM32F7508-DK/stm32f7508_freertos-configuration/module.ivy at 2.2.0 · MicroEJ/VEEPort-STMicroelectronics-STM32F7508-DK · GitHub

Unfortunately, this version only supports the Eclipse debugger (JDWP) client.
Support for debugging an application running on the simulator using Android Studio / IntelliJ IDEA has been added in MicroEJ Architecture 8.1.+.
See changelog: Architectures Changelog — MicroEJ Documentation

[8.1.1] - 2024-06-17

Simulator

  • Fixed breakpoint not taken into account by IntelliJ Idea’s debugger when a class is not loaded during the startup.

[8.1.0] - 2023-12-22

Simulator

  • Added compatibility with IntelliJ IDEA IDE to debug applications.

To debug this very application example, you can use the Eclipse IDE.
If you have your own VEE Port, you can upgrade the MicroEJ Architecture.
We are actively working on an upgrade of the STM32F7508-DK VEE Port that will include this.

Best regards,
Rémy

Hello Rémy,

Thanks for your answer. It works fine when updating my VEE Port Architecture to 8.1.1!

Regards,
Fabrice

1 Like