Skip to content

Commit cf9df79

Browse files
authored
Merge pull request #3347 from stuartwdouglas/class-loading-fix
fix: use correct class loader for clients and builder
2 parents 6f6bc7a + 276601f commit cf9df79

File tree

2 files changed

+2
-2
lines changed
  • wire-grpc-client/src/jvmMain/kotlin/com/squareup/wire
  • wire-runtime/src/jvmMain/kotlin/com/squareup/wire/internal

2 files changed

+2
-2
lines changed

wire-grpc-client/src/jvmMain/kotlin/com/squareup/wire/GrpcClient.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ actual abstract class GrpcClient actual constructor() {
5959
val packageName = interfaceName.substring(0, simpleNameOffset)
6060
val interfaceSimpleName = interfaceName.substring(simpleNameOffset)
6161
val implementationName = "${packageName}Grpc$interfaceSimpleName"
62-
return Class.forName(implementationName)
62+
return Class.forName(implementationName, false, service.java.classLoader)
6363
}
6464

6565
fun newBuilder(): Builder {

wire-runtime/src/jvmMain/kotlin/com/squareup/wire/internal/reflection.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ private fun <M : Message<M, B>, B : Message.Builder<M, B>> getBuilderType(
107107
messageType: Class<M>,
108108
): Class<B> {
109109
return runCatching {
110-
Class.forName("${messageType.name}\$Builder") as Class<B>
110+
Class.forName("${messageType.name}\$Builder", false, messageType.classLoader) as Class<B>
111111
}
112112
.getOrNull() ?: KotlinConstructorBuilder::class.java as Class<B>
113113
}

0 commit comments

Comments
 (0)