现在要使用 Google Chrome 扩展页面创建扩展,我们选择一个包含已创建扩展的目录并生成.crx文件。
问题在于它包含该目录中的所有文件——例如,所有文档、资产草稿等。
是否可以创建一些黑名单来忽略指定的文件,例如*.psd, *.pdf, docs/* ...?
现在要使用 Google Chrome 扩展页面创建扩展,我们选择一个包含已创建扩展的目录并生成.crx文件。
问题在于它包含该目录中的所有文件——例如,所有文档、资产草稿等。
是否可以创建一些黑名单来忽略指定的文件,例如*.psd, *.pdf, docs/* ...?
Chromium 团队决定不实施清单(或类似机制)来仅在 .CRX 中包含所需的文件。
推荐的工作流程是有一个构建步骤,仅输出目录中所需的文件dist,并从该目录创建 CRX。这是JavaScript 库的常见做法。
我创建了一个.crxignore自定义忽略文件,如下所示:
.*
Makefile
*.md
bin
它是为 zip 命令制作的!它不同于
.gitignore. 您不能添加评论,例如!见文档:https ://linux.die.net/man/1/zip ,找--exclude词。
现在您可以创建一个没有 ignred 文件的 zip:
$ zip -qr -9 -X .out/out.zip . -x@.crxignore
# ^^^^^^^^^^^^^ using ignore file
之后,我可以使用此 go 脚本转换zip为文件: https ://github.com/mmadfox/go-crx3您必须使用命令构建它(您可能会丢失 mod 错误,但会有您必须执行的命令跑)。--> 你可以把你的移动到你想要的地方。例如:。crxgo build -o out/crx3 crx3/main.goout/crx3[project]/bin/crx3
我没试过,也许
chrome命令也可以转换zip为crx.
您必须生成一个私钥:
$ bin/crx3 keygen .out/key.pem
Makefilebuild:
rm -f .out/out.zip
zip -qr -9 -X .out/out.zip . -x@.crxignore
bin/crx3 pack .out/out.zip -p .out/key.pem -o .out/out.crx
构建过程:
$ make build
# --> build the .out/out.crx file
试试命令行程序“zip”,如果你在 Windows 上可以在 cygwin 中找到它,或者可能存在于 OSX 上,如果你使用的是 linux,它很容易安装。
zip package.zip -r * -x package.sh -x *.git* -x "*.*~" -x "*.pdf" docs/* "*.psd"