DevEco Studio项目完成后无法编译

DevEco Studio项目完成后无法编译 图片

上图是编译错误的原码

“D:\HarmoryOS\AZWZA\DevEco Studio\tools\node\node.exe” “D:\HarmoryOS\AZWZA\DevEco Studio\tools\hvigor\bin\hvigorw.js” --mode module -p module=entry@default -p product=default -p pageType=page -p compileResInc=true -p requiredDeviceType=phone -p previewMode=true -p buildRoot=.preview PreviewBuild --watch --analyze=normal --parallel --incremental --daemon

hvigor WARN: The current module ‘Time2’ has dependency which is not installed at its oh-package.json5.

hvigor WARN: The current module ‘Time2’ has dependency which is not installed at its oh-package.json5.

hvigor ERROR: Failed :entry:default@PreBuild… hvigor ERROR: 00303075 Configuration Error

Error Message: Error in D:\HarmoryOSProject\Time2\entry\oh-package.json5. The version number of the module must be a string, but received a undefined.

  • Try the following:

    Verify the ‘version’ in oh-package.json5 files.

hvigor ERROR: BUILD FAILED in 79 ms

下面是报错详情:

The “@kit.ArkUI” package is not installed

The “@kit.NetworkKit” package is not installed

求各位大神指点指点


4 回复

参考编译报错“The version number of the module must be a string, but received a xxx.”,检查一下D:\HarmoryOSProject\Time2\entry\oh-package.json5文件下的version字段的配置值是不是number类型的,需要修改为字符串类型:

{
  "name": "entry",
  "version": "1.0.0", // 必须为字符串类型
}

好嘞,谢谢啦,

DevEco Studio项目编译失败可能由以下原因导致:

  1. SDK版本与项目配置不匹配,检查项目级和模块级build.gradle文件中的SDK版本设置。
  2. 依赖库冲突或缺失,检查oh-package.json5文件中的依赖项。
  3. Gradle同步失败,尝试清理缓存(File > Invalidate Caches)。
  4. 项目结构损坏,可尝试删除项目中的.idea、build等目录后重新导入。
  5. 系统环境变量配置问题,确保Node.js和Ohpm工具路径正确。

根据你提供的错误信息,问题主要集中在两个方面:oh-package.json5 文件配置错误依赖包未安装。以下是具体的解决步骤:

1. 修复 oh-package.json5 文件中的 version 字段

错误信息明确指出: Error in D:\HarmoryOSProject\Time2\entry\oh-package.json5. The version number of the module must be a string, but received a undefined.

这表明你的 entry 模块下的 oh-package.json5 文件中的 version 字段格式不正确或缺失。请打开该文件进行检查和修正。

正确的格式示例:

{
  "name": "entry",
  "version": "1.0.0", // 确保 version 是一个用双引号包裹的字符串
  "dependencies": {
    // ... 你的依赖
  }
}

请确保 version 字段存在,并且其值是一个有效的字符串(例如 "1.0.0"),而不是 undefined、数字或其他类型。

2. 安装缺失的依赖包

错误信息显示有两个关键的HarmonyOS系统包未安装:

  • @kit.ArkUI
  • @kit.NetworkKit

这些是项目运行所必需的依赖。你需要将它们添加到 oh-package.json5 文件的 dependencies 中,并执行安装命令。

操作步骤:

  1. entry 模块的 oh-package.json5 文件的 dependencies 部分,添加以下依赖项:
    "dependencies": {
      "@kit.ArkUI": "^1.0.0", // 版本号请根据你的SDK版本进行调整
      "@kit.NetworkKit": "^1.0.0"
    }
    
  2. 保存文件后,在DevEco Studio中打开终端(Terminal),导航到项目的根目录(即包含 hvigorw 文件的目录)。
  3. 执行以下命令来安装所有依赖:
    hvigorw clean
    hvigorw
    
    或者,你也可以直接使用DevEco Studio菜单中的 Build > Clean ProjectBuild > Build Project 功能。

总结

导致编译失败的根本原因是:

  1. 模块配置文件 (oh-package.json5) 的 version 字段不符合规范。
  2. 项目依赖的系统Kit包未在配置中声明或未成功安装。

请优先修正 version 字段,然后补充依赖声明并执行构建命令。这两步操作完成后,项目应能正常编译。

回到顶部