You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Compose Multiplatform添加字符串资源后Web构建报错求助

问题排查与解决

错误原因

你的strings.xml中<string>标签缺少name属性,Compose Multiplatform的资源生成任务(GenerateResClassTask)要求每个字符串资源必须通过name属性定义唯一标识,否则解析XML时无法获取资源ID,触发空指针异常。

修复步骤

  1. 修改strings.xml,为<string>标签添加name属性:
<resources>
    <string name="hello_world">Hello World</string>
</resources>
  1. 重新执行Web目标的构建命令,例如:
./gradlew :web:compileKotlinJs

补充说明

Compose Multiplatform资源系统兼容Android资源规范,所有资源(字符串、Drawable等)都需要通过name属性唯一标识,这样生成的Res类才能通过Res.string.hello_world的方式调用对应资源。

内容的提问来源于stack exchange,提问作者Shreyash.K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 00:22:15