При попытке создать Forge Responsive Connected Database для сборки. Я не могу собрать это приложение на своем компьютере с Windows 10. Я не могу успешно запустить «npm install». Я получаю следующие ошибки, перечисленные ниже. В итоге я попытался использовать предварительно настроенный «холст», и он все еще не позволял запускать приложение узла.
https://github.com/Autodesk-Forge/forge-rcdb.nodejs
Я пробовал эти решения безуспешно:
https://github.com/npm/npm/issues/14543
https://github.com/nodejs/node-gyp#on-windows
https://github.com/Automattic/node-canvas/wiki/Installation---Windows
https://github.com/substack/dnode/issues/181
https://github.com/nodejs/node-gyp/issues/629#issuecomment-153196245
https://www.npmjs.com/package/canvas-prebuilt
> canvas@1.6.10 install D:\DEVELOPMENT\Autodesk\forge-rcdb.nodejs3\node_modules\canvas > node-gyp rebuild D:\DEVELOPMENT\Autodesk\forge-rcdb.nodejs3\node_modules\canvas>if not defined npm_config_node_gyp (node "C:\Users\steck\AppData\Roaming\nvm\v7.7.1\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "node C:\Users\me\AppData\Roaming\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild ) module.js:472 throw err; ^ Error: Cannot find module 'D:\DEVELOPMENT\Autodesk\forge-rcdb.nodejs3\node_modules\canvas\node C:\Users\me\AppData\Roaming\npm\node_modules\node-gyp\bin\node-gyp.js' at Function.Module._resolveFilename (module.js:470:15) at Function.Module._load (module.js:418:25) at Module.runMain (module.js:605:10) at run (bootstrap_node.js:425:7) at startup (bootstrap_node.js:146:9) at bootstrap_node.js:540:3
Вот полные этапы установки и настройки, которые я тестировал на двух разных 2 разных компьютерах с установленной Windows10.
Pre-установки:
Глобальные пакеты Node.js:
npm
%appdata%
Powershell
Administrator
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install --global --production npm-windows-upgrade npm-windows-upgrade
npm-windows-upgrade --npm-version 5.6.0
node-gyp
Successfully installed Python 2.7
Successfully installed Visual Studio Build Tools.
npm install --global --production windows-build-tools
node-canvas
npm install
npm install -g node-gyp
Visual Studio 2017 ( ссылка ):
Шоколадный ( ссылка ):
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install -y python2 gtk-runtime microsoft-build-tools libjpeg-turbo
visuallstudiotool-vs2017 installation failed
GTK с каирской библиотекой ( ссылка ):
C:\GTK
Mongochef ( ссылка ):
MongoDB:
Основные установки:
cd Desktop\forge-rcdb-nodejs-master
Конфигурация:
Откройте config\development.config.js в вашем редакторе и измените значения раздела viewer на:
config\development.config.js
viewer
viewer: { viewer3D: 'https://developer.api.autodesk.com/derivativeservice/v2/viewers/viewer3D.js?v=4.0.1', threeJS: 'https://developer.api.autodesk.com/derivativeservice/v2/viewers/three.js?v=4.0.1', style: 'https://developer.api.autodesk.com/derivativeservice/v2/viewers/style.css?v=4.0.1' }
Измените раздел database в config\development.config.js с настройками подключения MongoDB.
database
Восстановление фиктивных данных базы данных в resources/db/dev или resources/db/prod через Mongochef Функция импорта.
resources/db/dev
resources/db/prod
Откройте Powershell как обычно (скажем, текущий пользователь) и установите следующие переменные среды:
$env:NODE_ENV="development" $env:HOT_RELOADING="true" $env:FORGE_DEV_CLIENT_ID="YOUR_CLINET_ID" $env:FORGE_DEV_CLIENT_SECRET="YOUR_CLINET_SECRET"
Запустить проект
Измените текущий каталог Powershell на папку с исходным кодом forge-rcdb и введите npm start
npm start
открыть http://localhost:3000 в вашем любимом браузере.
Устранение неисправностей
Возможно, вам не удастся загрузить какие-либо модели в браузере. Если вы хотите проверить функциональность, скопируйте resources\models\prod\robot в resources\models\dev\robot. После этого перейдите к http://localhost:3000/configurator в веб-браузере и щелкните мышью на проекте Kinematics, затем вы увидите модель, загруженную на ваш экран.
resources\models\prod\robot
resources\models\dev\robot
Kinematics
Если вы видите ответ http://localhost:3000/api/forge/user, показывающий HTTP EORROR CODE 404 из консоли разработчика браузера, то вам необходимо проверить, является ли CallBack URL вашего Forge App, используемого для размещения forge-rcdb в Forge Dev Protal is http://localhost:3000/api/forge/callback/oauth. ( примечание. Этот конфиг можно изменить в config\development.config.js)
Если вы получите пустой массив из ответа http://localhost:3000/api/models/configurator?limit=100&offset=0&search=,, это означает, что в вашей коллекции MongoDB ничего нет configurator.models. Чтобы исправить эту проблему, вы можете импортировать содержимое базы данных resources\db\dev\configurator.models.json в вашу MongoDB через Mongochef . ( примечание. Пожалуйста, обратитесь к шагу 3 раздела конфигурации )
configurator.models
resources\db\dev\configurator.models.json
Если вы не можете загрузить ни одну из перечисленных моделей с веб-страниц, это означает, что в вашем resources\models\prod или resources\models\dev, а также в корзине Forge OSS нет загруженных видимых пузырьков. Поэтому, пожалуйста, проверьте значение urn в вашей базе данных, если у вас есть эти модели в этих позициях, упомянутых ранее.
resources\models\prod
resources\models\dev
urn
Если вы обнаружили, что основная причина для пункта 3 устранения неполадок заключается в том, что у вас не было моделей, перечисленных в forge-rcdb, это потому, что эти модели являются частными моделями Autodesk или загружены другими пользователями ранее, что не может быть передано общественности, к сожалению. Чтобы устранить эту проблему, вы должны изменить пример данных коллекций MongoDB, упомянутых в шаге 3 раздела конфигурации, на свои собственные модели.
Надеюсь, это поможет.