Chrome говорит, что мой файл манифеста расширения отсутствует или нечитабелен
Я новый разработчик расширения chrome, и я прошел учебник Chrome по созданию расширения Hello World, здесь мой код:
{
"name": "My First Extension",
"version": "1.0",
"manifest_version": 2,
"description": "The first extension that I made.",
"browser_action": {
"default_icon": "icon.png"
},
"permissions": [
"http://api.flickr.com/"
]
}
Когда я пошел загружать распакованное расширение, он сказал, что файл манифеста отсутствует или нечитаем. Да, у меня есть изображение в папке с ним, и оно правильно названо manifest.json
Ответы
Ответ 1
Что-то, что обычно происходит, это то, что файл манифеста неправильно назван. Дважды проверьте имя (и расширение) и убедитесь, что оно не заканчивается на .txt(например).
Чтобы определить это, убедитесь, что вы не скрываете расширения файлов:
- Откройте проводник Windows
- Перейдите в папку и параметры поискa > вкладка "Вид"
- Снимите флажок Скрыть расширения для известных типов файлов
Также обратите внимание, что именование файла манифеста, на самом деле, чувствительно к регистру, то есть manifest.json!= MANIFEST.JSON.
Ответ 2
Моя проблема была несколько иной.
По умолчанию Eclipse сохранил файл manifest.json в виде текстового файла с кодировкой ANSI.
Решение:
- Открыть в Блокноте
- Файл → Сохранить как
- выберите UTF-8 из раскрывающегося списка в левом нижнем углу.
- Сохранить
Ответ 3
Я также столкнулся с этой проблемой.
Моя проблема заключалась в том, что я переименовал папку, в которую было добавлено расширение, поэтому все, что мне нужно было сделать, это удалить и перезагрузить расширение.
Думал, что это может помочь некоторым людям там.
Ответ 4
Моя тоже была забавной. В то время как copypasting "manifest.json" из учебника, мне также удалось скопировать ведущее пространство. Не могу понять, почему это не находит.
Ответ 5
Если вы загружаете образцы с сайта developer.chrome.com, возможно, что ваша фактическая папка содержится в папке с тем же именем, и это создает проблему. Например, извлеченное расширение образца с именем tabCapture будет выглядеть следующим образом:
C:\Users\...\tabCapture\tabCapture
Ответ 6
Некоторые разрешения для образца по умолчанию.
Я хотел посмотреть, как это работает, я создаю первое расширение, поэтому загрузил более простой.
Скачан образец "типизированный URL-адрес истории" от
https://developer.chrome.com/extensions/examples/api/history/showHistory.zip
который можно найти на сайте https://developer.chrome.com/extensions/samples
Это сработало отлично, надеюсь, что это поможет
Ответ 7
У меня была такая же проблема с Chromium при использовании Puppeteer-sharp (версия Win64-609904). Мне нужно было запустить chrome.exe с параметром командной строки --load-extension. Я перепробовал все и ничего у меня не получилось. Но наконец я нашел решение. В моем случае у меня есть два расширения в исходных кодах в папках c:\box\ext1 и c:\box\ext2 Решение:
- Как уже упоминалось в Livingston, вам необходимо сохранить все исходные файлы расширений в кодировке UTF-8.
- Затем вам нужно сжать содержимое папки ext1 с помощью zip в ext1.zip и ext2 в ext2.zip. Это означает, что manifest.json будет в корне ext1.zip, но не в подпапке ext1.zip\ext1.
- Самый важный момент: после сжатия вам не следует переименовывать файлы ext1.zip из ext2.zip во что-то другое. Если вам нужно, чтобы у этих расширений были другие имена файлов, то вам нужно переименовать исходные папки и перепаковать их заново.
Затем я запустил Chromium со следующей командной строкой:
chrome.exe --load-extension="c:\box\ext1,c:\box\ext2" --enable-logging
и оба расширения загружены нормально.
Ответ 8
НЕ ИСПОЛЬЗУЙТЕ загрузку Chrome в верхней части сайта загрузки Chrome. Прокручивается в нижнюю часть и находит "Загрузить Chrome для другой платформы".
Выбранный Windows 10/8/7 64-разрядный (у меня 64-разрядная машина) и установлен.
Это сработало.
Я импортировал свои закладки, и все хорошо.
(Примечание. Шаг выше по закладкам может быть невозможен, поскольку они должны быть в ваших данных синхронизации Google+, но при более ранней попытке я reset все данные синхронизации в моем профиле.)