如何使用命令行在Macos上打包Chrome扩展程序?

问题描述 投票:12回答:4

我正在尝试在OSX 10.5上自动化我的Chrome扩展程序构建过程。对于Windows,我无法为OSX找到类似的OSX命令

chrome.exe --pack-extension = c:\ myext --pack-extension-key = c:\ myext.pem

它甚至可以在OSX上使用吗?因为在documentation中没有提到它。

请指导我。

提前致谢。 -Parimal Das

macos command-line google-chrome
4个回答
14
投票
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --pack-extension...

3
投票

使用CRXMake宝石。

祝你有美好的一天。


1
投票

在shell上运行的完整示例:

"/Users/varr/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --pack-extension="/Users/varr/Dropbox/Code/Projects/Bookmark Express/src"

注意事项:

  • Chrome不会显示任何成功或失败的输出,但会返回退出代码
  • 你的shell(例如oh-my-zsh)可能会显示退出代码,因此你可以在那里有一个想法
  • Chrome将生成两个文件,.crx.pem

为了自动化,我使用了Geb(和Groovy)。在GebConfig.groovy,我尝试使用:

def chromePath = "/Users/varr/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary"
def packExtensionSwitch='--pack-extension="/Users/varr/Dropbox/Code/Projects/Bookmark Express/src"'

ProcessBuilder packExtension = new ProcessBuilder(chromePath, packExtensionSwitch)
Process process = packExtension.start()

但是每次都返回退出代码21并且没有生成文件。我最终确定了我的方法:

def packageExtensionScript = '/Users/varr/package.sh'

ProcessBuilder packExtension = new ProcessBuilder(packageExtensionScript)
Process process = packExtension.start()

为了完成它,我使用命令运行package.sh一个单行脚本,这一切都奏效了!


1
投票
© www.soinside.com 2019 - 2024. All rights reserved.