【问题标题】:Error on publishing Chrome Extension发布 Chrome 扩展时出错
【发布时间】:2015-04-27 10:07:54
【问题描述】:

我已经开发了一个 Chrome 扩展程序,但我卡在发布步骤中......当我尝试上传我的扩展程序时,我收到了这个错误:

An error occurred: Failed to process your item.
The manifest must define a version.

但我已经定义了一个版本...这里是我的 manifest.json 文件:

{
    "manifest_version": 2,
    "name": "AccessID - RFID",  // Nom
    "version": "0.0.0.1",  // Version
    "version_name": "0.1 Beta",

    "description": "Gestion RFID.", // Description

    "icons": { ... },

    "permissions": [ ... ],

    "options_ui": { "page": ... },

    "background":
    {
        "scripts": [ ... ]
    },

    "content_scripts" :
    [
        {
            "matches": [...],
            "all_frames": true,
            "js": [ ... ],
            "css" : [ ... ]
        },
        {
            "matches": [ ... ],
            "all_frames": true,
            "js": [ ... ]
        }
    ],

    "web_accessible_resources" : [ ... ],

    "page_action":
    {

        "default_title": "",
        "default_popup": "",
        "default_icon": { ... }
    }
}

最奇怪的是它在开发模式下运行良好。扩展程序已加载并且运行良好。所以我其实不明白发生了什么。

【问题讨论】:

  • 我认为那些 // comments 实际上并没有出现在您的清单中,对吗?
  • 认真的吗?它不处理 cmets ???
  • @Xan Ok 发表您的评论作为回复 T_T

标签: google-chrome google-chrome-extension chrome-web-store


【解决方案1】:

manifest.json,顾名思义,是一个 JSON(JavaScript Object Notation)文件,而不是 JavaScript 源文件。

JSON format 故意简单化并且不支持任何形式的 cmets - 因此从技术上讲,它们是语法错误。奇怪的是,它正常加载以进行开发。

删除 // comments 将解决您的问题。其他常见问题包括忘记将键放在引号中并留下额外的逗号 - JavaScript 不会抱怨这一点,因为它是有效的 ECMAScript 对象文字,但它是无效的 JSON。

您可以使用像 JSONLint 这样的 JSON 验证器来捕获这样的错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多