Node.js:由于node-sass和node-gyp而找不到Python异常

突然在我的jenkins环境之一中,构建开始失败,而在本地计算机中,由于安装了python,它似乎运行良好,

从日志中我能检测到的问题是内部的依赖是 从

当我访问研究,这约节点GYP,发现先决条件的Python需要安装。

所以我的问题是,我可以安装哪个版本的node-sass来绕过此进程,或者有更好的解决方案,因为直到今天早上我的构建在同一环境上都可以正常运行。

gyp verb check python checking for Python executable "python2" in the PATH

gyp verb `which` failed Error: not found: python2

gyp verb `which` failed at getNotFoundError (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:13:12)

gyp verb `which` failed at F (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:68:19)

gyp verb `which` failed at E (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:80:29)

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:89:16

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\isexe\index.js:44:5

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\isexe\windows.js:29:5

gyp verb `which` failed at FSReqWrap.oncomplete (fs.js:82:15)

gyp verb `which` failed python2 { [Error: not found: python2] code: 'ENOENT' }

gyp verb check python checking for Python executable "python" in the PATH

gyp verb `which` failed Error: not found: python

gyp verb `which` failed at getNotFoundError (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:13:12)

gyp verb `which` failed at F (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:68:19)

gyp verb `which` failed at E (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:80:29)

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\which\which.js:89:16

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\isexe\index.js:44:5

gyp verb `which` failed at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\isexe\windows.js:29:5

gyp verb `which` failed at FSReqWrap.oncomplete (fs.js:82:15)

gyp verb `which` failed python { [Error: not found: python] code: 'ENOENT' }

gyp verb could not find "python". checking python launcher

gyp verb could not find "python". guessing location

gyp verb ensuring that file exists: C:\Python27\python.exe

gyp ERR! configure error

gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.

gyp ERR! stack at Object.failNoPython (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\node-gyp\lib\configure.js:454:19)

gyp ERR! stack at Object.<anonymous> (C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\node-gyp\lib\configure.js:480:16)

gyp ERR! stack at C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\graceful-fs\polyfills.js:284:29

gyp ERR! stack at FSReqWrap.oncomplete (fs.js:82:15)

gyp ERR! System Windows_NT 6.3.9600

gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files (x86)\\Jenkins\\jobs\\NdbSite-hot-fix-Manual-PreBuild\\workspace\\src\\NdbSite.UI\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="

gyp ERR! cwd C:\Program Files (x86)\Jenkins\jobs\NdbSite-hot-fix-Manual-PreBuild\workspace\src\NdbSite.UI\node_modules\node-sass

gyp ERR! node -v v5.10.1

gyp ERR! node-gyp -v v3.5.0

gyp ERR! not ok

Build failed

任何想法都非常感谢,谢谢。

回答:

安装时,Node-sass会尝试为您的平台下载二进制文件。3.8支持节点5 https://github.com/sass/node-

sass/releases/tag/v3.8.0 如果您的Jenkins无法下载预构建的二进制文件,那么您需要遵循Node-

gyp上的平台要求自述文件(Python2,VS或MSBuild,…)如果可能的话,我建议将您的Node更新到至少6,因为Node不再支持5。如果要升级到8,则需要将node-

sass更新为4.5.3

以上是 Node.js:由于node-sass和node-gyp而找不到Python异常 的全部内容, 来源链接: utcz.com/qa/435150.html

回到顶部