如果 PhantomJS 在线上下载失败,你可以手动下载后再本地安装,步骤如下:
-
手动下载 PhantomJS 安装包 从官方归档地址下载对应系统的版本:
- 官方下载地址:bitbucket.org/ariya/phant…
- 选择与你系统匹配的版本(例如 macOS 选择
phantomjs-2.1.1-macosx.zip)
-
解压并放置到指定位置 解压下载的压缩包,将得到的
phantomjs可执行文件放到一个目录(例如~/phantomjs/) -
配置环境变量 将 PhantomJS 路径添加到系统环境变量中:
# 编辑环境变量配置文件(根据你的shell选择) vi ~/.bash_profile # 或 ~/.zshrc # 添加以下内容(路径替换为你的实际路径) export PATH="$PATH:~/phantomjs/bin" # 使配置生效 source ~/.bash_profile # 或 ~/.zshrc -
验证安装 运行以下命令确认 PhantomJS 可正常使用:
phantomjs --version -
重新安装项目依赖 现在可以重新安装项目依赖,PhantomJS 会从本地路径读取而不是在线下载:
npm install phantomjs-prebuilt --ignore-scripts加上
--ignore-scripts参数可以跳过自动下载脚本,直接使用本地已安装的版本。
如果项目构建仍有问题,可能需要在项目配置中手动指定 PhantomJS 的路径,具体取决于你的构建工具(如 Webpack、Gulp 等)的配置方式。
Linux 验证安装phantomjs问题
[root@iZwz9iyhv8respfkq3pji8Z phantomjs-2.1.1-linux-x86_64]# phantomjs --version
Auto configuration failed 140424648058688:error:0E079065:configuration file
routines:DEF_LOAD_BIO:missing equal sign:conf_def.c:362:line 75
根据提供的错误信息 Auto configuration failed 和 missing equal sign:conf_def.c:362:line 75,这通常与 OpenSSL 3.x 版本的配置格式变更有关,而 PhantomJS 2.1.1 自带的或系统原有的 OpenSSL 版本(可能是 1.x)无法正确解析新格式的配置文
解决方案
执行:
export OPENSSL_CONF=/etc/ssl
其他指令
使用 npm 安装
npm install -g pnpm@6 # pnpm 6 是支持 Node.js 14 的最后一个主要版本
npm run dll
已经成功生成了 vendor-manifest.json 和 vendor.dll.js 文件
- 版本 nodejs:v14.21.3