操作系统:Ubuntu 16.04.3 LTS
我正尝试使用ng test
对一个有角度的项目运行单元测试,但是它无法启动浏览器并显示错误ERROR [launcher]: Cannot start Chrome
。
甚至puppteer也只能在无头模式下运行,因为headless: false
会给出错误UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to launch chrome!
还在xdg-open https://example.com
上给出日志
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: www-browser: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: links2: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: elinks: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: links: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: lynx: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: w3m: not found
xdg-open: no method available for opening 'https://example.com/
因此可以肯定地说Chrome存在问题,而不是我正在运行的应用程序/技术。 但是我也使用以下方法安装了谷歌浏览器
wget https://dl.google.com/linux/linux_signing_key.pub
sudo apt-key add linux_signing_key.pub
sudo apt update
sudo apt install google-chrome-stable
但是,什么都没有改变。
编辑
/usr/bin/xdg-open
文件包含以下内容(如果有帮助的话)
# if BROWSER variable is not set, check some well known browsers instead
if [ x"$BROWSER" = x"" ]; then
BROWSER=www-browser:links2:elinks:links:lynx:w3m
if [ -n "$DISPLAY" ]; then
BROWSER=x-www-browser:firefox:iceweasel:seamonkey:mozilla:epiphany:konqueror:chromium:google-chrome:$BROWSER
fi
fi
答案 0 :(得分:0)
首先,在我的问题中出现第三种情况,即/usr/bin/xdg-open: 778: /usr/bin/xdg-open: links2: not found ...
,因为我没有在我的ubuntu系统上安装这些文本浏览器,而我正在使用Putty
进行远程访问。
第二,最可能是由于这种远程访问,$DISPLAY
文件中的null
变量即将到来usr/bin/zdg-open
。因此,为了使其打开我本地系统上可用的DISPLAY设置上的链接,必须使用x11 Putty转发概念;首先下载Xming
用于Windows,然后在启用x11的情况下运行Putty,之后解决了上述问题(对于所有情况)。
如果禁用了x11,则该链接将在我安装的文本浏览器中打开,例如links
答案 1 :(得分:-1)
先运行-
sudo apt-get install libnss3
然后输入
google-chrome
在您的终端上。
就是这样,希望这项工作能够实现。