Я пытаюсь настроить проект nodejs на нашей установке jenkins.
Тем не менее, я получаю сообщение об ошибке, когда я пытаюсь установить NMP Contextify, который является зависимостью.

> contextify@0.0.5 preinstall /home/damien/node_modules/contextify
> node-waf clean || true; node-waf configure build

Nothing to clean (project not configured)
Setting srcdir to                        : /home/damien/node_modules/contextify 
Setting blddir to                        : /home/damien/node_modules/contextify/build 
Checking for program g++ or c++          : /usr/bin/g++ 
Checking for program cpp                 : /usr/bin/cpp 
Checking for program ar                  : /usr/bin/ar 
Checking for program ranlib              : /usr/bin/ranlib 
Checking for g++                         : ok  
Checking for node path                   : ok /usr/local/lib/node 
Checking for node prefix                 : ok /usr/local 
'configure' finished successfully (0.032s)
Waf: Entering directory `/home/damien/node_modules/contextify/build'
no such environment: default
Traceback (most recent call last):
  File "/usr/local/bin/node-waf", line 16, in <module>
    Scripting.prepare(t, os.getcwd(), VERSION, wafdir)
  File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 145, in prepare
    prepare_impl(t, cwd, ver, wafdir)
  File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 135, in prepare_impl
    main()
  File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 188, in main
    fun(ctx)
  File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 386, in build
    return build_impl(bld)
  File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 399, in build_impl
    bld.add_subdirs([os.path.split(Utils.g_module.root_path)[0]])
  File "/usr/local/bin/../lib/node/wafadmin/Build.py", line 981, in add_subdirs
    self.recurse(dirs, 'build')
  File "/usr/local/bin/../lib/node/wafadmin/Utils.py", line 634, in recurse
    f(self)
  File "/home/damien/node_modules/contextify/wscript", line 16, in build
    obj = bld.new_task_gen("cxx", "shlib", "node_addon")
  File "/usr/local/bin/../lib/node/wafadmin/Build.py", line 335, in new_task_gen
    ret = cls(*k, **kw)
  File "/usr/local/bin/../lib/node/wafadmin/Tools/ccroot.py", line 162, in __init__
    TaskGen.task_gen.__init__(self, *k, **kw)
  File "/usr/local/bin/../lib/node/wafadmin/TaskGen.py", line 118, in __init__
    self.env = self.bld.env.copy()
AttributeError: 'NoneType' object has no attribute 'copy'
npm ERR! error installing contextify@0.0.5 Error: contextify@0.0.5 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! error installing contextify@0.0.5 `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR! error installing contextify@0.0.5     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/exec.js:49:20)
npm ERR! error installing contextify@0.0.5     at ChildProcess.emit (events.js:67:17)
npm ERR! error installing contextify@0.0.5     at ChildProcess.onexit (child_process.js:192:12)
npm ERR! contextify@0.0.5 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR! 
npm ERR! Failed at the contextify@0.0.5 preinstall script.
npm ERR! This is most likely a problem with the contextify package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-waf clean || true; node-waf configure build
npm ERR! You can get their info via:
npm ERR!     npm owner ls contextify
npm ERR! There is likely additional logging output above.
npm ERR! 
npm ERR! System Linux 2.6.38-11-generic
npm ERR! command "node" "/usr/local/bin/npm" "install" "contextify"
npm ERR! cwd /home/damien
npm ERR! node -v v0.4.11
npm ERR! npm -v 1.0.30
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/damien/npm-debug.log
npm not ok

Это не происходит на моем компьютере разработчика (Mac, с узлом 0.4.12; npm 1.0.30).
Это также происходит на узле 0.4.12.

Любая идея ?

1 ответ1

0

Мое плохое, решение было здесь.

Я установил nodejs 0.5.7, но я не могу использовать его, так как он не поддерживается Express.
Поэтому я понизил версию, но библиотека node-waf не была должным образом понижена. Удаление узла и узла-waf и переустановка узла, это работает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .