Skip to content

MAUI app built in Debug configuration for CoreCLR fails to launch with Didn't find class "mono.MonoRuntimeProvider" #10177

Closed
@vitek-karas

Description

@vitek-karas

Android framework version

net10.0-android (Preview)

Affected platform version

.NET 10 Preview 6 (daily build)

Description

java.lang.RuntimeException: Unable to get provider mono.MonoRuntimeProvider: java.lang.ClassNotFoundException: Didn't find class "mono.MonoRuntimeProvider" on path: DexPathList[[zip file "/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk"],nativeLibraryDirectories=[/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/lib/x86_64, /data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]]

Steps to Reproduce

(this was done on Windows, but it should probably work the same everywhere)
I installed the daily SDK from dotnet/dotnet - https://github.com/dotnet/dotnet/blob/main/docs/builds-table.md
Using this SDK (set via PATH and DOTNET_ROOT) I ran:

dotnet workload config --update-mode manifests
dotnet workload install maui
dotnet new maui
dotnet build -c Debug /p:UseMonoRuntime=false /t:Run -f net10.0-android

The app builds fine but crashes on launch - logcat shows:

FATAL EXCEPTION: main
Process: com.companyname.t2clr, PID: 10426
java.lang.RuntimeException: Unable to get provider mono.MonoRuntimeProvider: java.lang.ClassNotFoundException: Didn't find class "mono.MonoRuntimeProvider" on path: DexPathList[[zip file "/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk"],nativeLibraryDirectories=[/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/lib/x86_64, /data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]]
	at android.app.ActivityThread.installProvider(ActivityThread.java:7770)
	at android.app.ActivityThread.installContentProviders(ActivityThread.java:7276)
	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6983)
	at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2236)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:205)
	at android.os.Looper.loop(Looper.java:294)
	at android.app.ActivityThread.main(ActivityThread.java:8177)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
Caused by: java.lang.ClassNotFoundException: Didn't find class "mono.MonoRuntimeProvider" on path: DexPathList[[zip file "/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk"],nativeLibraryDirectories=[/data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/lib/x86_64, /data/app/~~CVaWjD2zE82iDvXUAslITQ==/com.companyname.t2clr-OQXNQlRgNBnjvFVvi3IQ6w==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]]
	at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
	at android.app.AppComponentFactory.instantiateProvider(AppComponentFactory.java:147)
	at androidx.core.app.CoreComponentFactory.instantiateProvider(CoreComponentFactory.java:66)
	at android.app.ActivityThread.installProvider(ActivityThread.java:7754)
	at android.app.ActivityThread.installContentProviders(ActivityThread.java:7276) 
	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6983) 
	at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2236) 
	at android.os.Handler.dispatchMessage(Handler.java:106) 
	at android.os.Looper.loopOnce(Looper.java:205) 
	at android.os.Looper.loop(Looper.java:294) 
	at android.app.ActivityThread.main(ActivityThread.java:8177) 
	at java.lang.reflect.Method.invoke(Native Method) 
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552) 
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971) 

(the test app was called t2clr)

Did you find any workaround?

No response

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageIssues that need to be assigned.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions