2017-01-04 7 views
1

Наша команда делает проект с сервером Node.js и использует GitHub в качестве источника управления. Проблема в том, что я запустил сервер. Я использую следующие шаги, чтобы проверить, будет ли мастер запускать приложение.Узел приложения не работает на моем ПК, но работает отлично с другим компьютером моей команды (с использованием Git)

git checkout master 
git pull 
npm update 
node .\backend\server.js 

Последний комментарий дает мне следующую ошибку.

D:\***\node_modules\passport-oauth2\lib\strategy.js:82 
    if (!options.clientID) { throw new TypeError('OAuth2Strategy requires a clientID option'); } 
         ^

TypeError: OAuth2Strategy requires a clientID option 
    at Strategy.OAuth2Strategy (D:\Documenten\WatchFriends\Web\node_modules\passport-oauth2\lib\strategy.js:82:34) 
    at new Strategy (D:\Documenten\WatchFriends\Web\node_modules\passport-google-oauth20\lib\strategy.js:52:18) 
    at module.exports.config (D:\Documenten\WatchFriends\Web\backend\data\passport.js:94:18) 
    at Object.<anonymous> (D:\Documenten\WatchFriends\Web\backend\server.js:16:1) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
    at Module.runMain (module.js:604:10) 
    at run (bootstrap_node.js:394:7) 
    at startup (bootstrap_node.js:149:9) 
    at bootstrap_node.js:509:3 

Другие партнеры команды также работают над одним и тем же репозиторием, выполнили те же шаги, чтобы проверить, будет ли хозяин работать. Жуткая проблема в том, что у них нет никаких проблем. Также файлы конфигурации, которые игнорируются файлом .gitignore, равны.

Вопрос: В чем проблема, почему код не запускается на моем компьютере, но будет работать на других компьютерах?

Я пытался с удалить и отложить проект от GitHub, переустановить модули узла и добавить проигнорированные файлы. Но это не устраняет ошибку. Я завязываю узел версии 6.9.3 и git версии 2.10.2.windows.1.

Update:

  • Вот ссылка на наш проект GitHub: github.com/WatchFriends/Web
  • Это состояние сборки Travis Build Status(Просто ckecking некоторых задач глотка, но и npm run build)
  • Вот ссылка на Трэвис: travis-ci.org/WatchFriends/Web
  • Конфигурация Трави s: ./.travis.yml on GitHub

    install: 
        - npm install 
        - npm install -g angular-cli 
    language: node_js 
    script: 
        - gulp html 
        - gulp scss 
        - gulp ts 
        - gulp node 
    node_js: 
        - "6.9" 
    cache: 
        directories: 
        - node_modules 
        - bower_components 
    
+1

Вы должны сравнить переменные окружения на своем ПК и членов вашей команды. ПК –

+1

Очевидно, что что-то не хватает, может быть, есть папка или файл конфигурации, где вы должны что-то сначала установить? Что происходит в Strategy.js по строке 82? – Robert

ответ

1

Вот почему вы должны использовать непрерывные системы интеграции, как Travis, Circle или Codeship для запуска тестов на чистую систему - чтобы избежать ситуации, что приложение не работает, но кто-то говорит, что «это работает на моей системе».

Очевидно, что ваша система должна отличаться от систем, в которых работает код. У вас может быть установлено различное программное обеспечение, разные службы, разные библиотеки, разные переменные среды, другая ОС или, может быть, вы делаете что-то другое во время установки или запуска приложения.

Начните использовать CI, и вы сразу увидите, что случилось.

также использовать НПМ для запуска службы:

npm start 

так, что вы знаете, что вы работаете в ту же команду, как и все остальные.

+0

Извините, но мы используем Travis. [это наш статус] (https://travis-ci.org/WatchFriends/Web.svg?branch=master) и [здесь наш проект] (https://github.com/WatchFriends/Web) –