Kotlin,将映射解析为JSON

Kotlin,将映射解析为JSON,json,kotlin,jira,Json,Kotlin,Jira,我很难将Kotlin映射转换为JSON对象,我接管的项目使用JSON对象 javax.ws.rs.client.Entitylibrary,用于将kotlin映射转换为JSON实体,通过Jira rest api与Jira服务器对话,并最终打开新问题。 问题是,我从服务器返回了一个400错误请求,当我打印出实体时,它不是JSON格式,我使用的代码是: val fields = jiraConfig.fields .plus(Pair("summary&q

我很难将Kotlin映射转换为JSON对象,我接管的项目使用JSON对象
javax.ws.rs.client.Entity
library,用于将kotlin映射转换为JSON实体,通过Jira rest api与Jira服务器对话,并最终打开新问题。
问题是,我从服务器返回了一个
400错误请求
,当我打印出实体时,它不是JSON格式,我使用的代码是:

val fields = jiraConfig.fields
                .plus(Pair("summary", summary))
                .plus(Pair("description", description))
                .plus(Pair("project", mapOf("key" to key)))
                .plus(Pair("reporter", mapOf("name" to username)))
                .map { Pair(it.id, it.value) }
                .toMap()
val payload = mapOf("fields" to fields)
val jsonPayload = Entity.json(payload)
println(jsonPayload)
val response = target
                .path("rest/api/2/issue")
                .request(MediaType.APPLICATION_JSON_TYPE)
                .post(Entity.json(jsonPayload ))
因此,当我打印出jsonPayload变量时,它不会显示为JSON格式:

Entity{entity={fields={components=[{id=ACOMPONENT}], FIELD=FIELDVALUE, ANOTHERFIELD={value=AVALUE}, issuetype={name=ANISSUETYPE}, labels=[ALABEL], summary=ASUMMARY, description=project={key=AKEY}, reporter={name=ANAME}}}, variant=Variant[mediaType=application/json, language=null, encoding=null], annotations=[]}
这显然不是JSON格式,这可能是Jira不阅读它的原因。
我做错什么了吗?我应该使用其他方法使用
javax.ws.rs.client.Entity

当我尝试使用带有硬编码JSON的curl创建Jira API问题时,效果很好:

{
        "fields": {
                "project": {
                        "key": "AKEY"
                },
                "summary": "A SUMMARY",
                "description": "A DESCRIPTION",
                "reporter": {
                        "name": "ANAME"
                },
                "issuetype": {
                        "name": "ANISSUETYPE"
                }
        }
}
干杯