Проблема с клиентом OPC UA при попытке создать снимок Ubuntu

Я создал рабочее приложение, используя пакет OPC UA для node. Я запустил его на виртуальной машине Linux (Ubuntu 18.04 Bionic) и хочу поместить его в оснастку для упрощения повторного использования в других системах. Я следил за учебным пособием в их документах о том, как создать привязку nodejs. Но при выполнении snapcraft в какой-то момент происходит сбой, и я получаю эту ошибку:

ubuntu-doku@ubuntudoku-VirtualBox:~/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING$ snapcraft
Pulling opcproject 
Downloading 'node-v6.14.2-linux-x64.tar.gz'[==============================] 100%
npm --cache-min=Infinity install
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.1.2 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN [email protected] No repository field.
npm --cache-min=Infinity install --global

> [email protected] postinstall /home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/lib/node_modules/opc_ua_testing/node_modules/node-opcua-client
> node test_helpers/create_certificates.js certificate -s -o certificates/client_selfsigned_cert_2048.pem

/home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/lib/node_modules/opc_ua_testing/node_modules/chalk/source/index.js:106
    ...styles,
    ^^^

SyntaxError: Unexpected token ...
    at createScript (vm.js:56:10)
    at Object.runInThisContext (vm.js:97:10)
    at Module._compile (module.js:549:28)
    at Object.Module._extensions..js (module.js:586:10)
    at Module.load (module.js:494:32)
    at tryModuleLoad (module.js:453:12)
    at Function.Module._load (module.js:445:3)
    at Module.require (module.js:504:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/lib/node_modules/opc_ua_testing/node_modules/node-opcua-pki/dist/crypto_create_CA.js:32:15)
/home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/lib
└── (empty)

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.1.2 (node_modules/opc_ua_testing/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! Linux 5.4.0-42-generic
npm ERR! argv "/home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/bin/node" "/home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/install/bin/npm" "--cache-min=Infinity" "install" "--global"
npm ERR! node v6.14.2
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] postinstall: `node test_helpers/create_certificates.js certificate -s -o certificates/client_selfsigned_cert_2048.pem`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] postinstall script 'node test_helpers/create_certificates.js certificate -s -o certificates/client_selfsigned_cert_2048.pem'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-opcua-client package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node test_helpers/create_certificates.js certificate -s -o certificates/client_selfsigned_cert_2048.pem
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs node-opcua-client
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls node-opcua-client
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/ubuntu-doku/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING/parts/opcproject/src/npm-debug.log
npm ERR! code 1
Failed to run 'npm --cache-min=Infinity install --global' for 'opcproject': Exited with code 1.

У меня установлены последние версии NPM и node.js. Кто-нибудь признает эту проблему? Или может кто-нибудь помочь мне здесь?


person KorJu    schedule 27.07.2020    source источник
comment
Можете ли вы уточнить «учебник в их документах»? Можете ли вы предоставить URL-адрес, чтобы мы знали, на какой из них вы ссылаетесь?   -  person Etienne    schedule 27.07.2020
comment
** Учебник от snapcraft: snapcraft.io/docs/node-apps   -  person KorJu    schedule 29.07.2020


Ответы (2)


это ссылка на файл npm-debug.log.

https://docs.google.com/document/d/1lQIGYopbdACnC_fOekNEj4fkLNMxkf5QL19oUqZqr74/edit?usp=sharing

person KorJu    schedule 30.07.2020

вам нужно использовать более новую версию node-js.

Pulling opcproject 
Downloading 'node-v6.14.2-linux-x64.tar.gz'[==============================] 100%

Для node-opcua требуется как минимум версия nodejs 10. (текущая версия nodejs 14)

вам нужно указать требуемую версию nodejs в вашем файле snapcraft.yml:

...
    plugin: nodejs
    nodejs-version: "14.7.0"
...
person Etienne    schedule 27.07.2020
comment
У меня установлен узел. Версия 12.18. ubuntu-doku@ubuntudoku-VirtualBox:~/Dokumente/OPC_UA_TESTING_v3/OPC_UA_TESTING$ node -v v12.18.3 - person KorJu; 29.07.2020
comment
у вас может быть установлен узел 12 на Ubuntu. Эта версия не будет использоваться snap. Snap будет использовать версию, указанную в файле snapcraft.yml, или v6, если версия не указана. - person Etienne; 31.07.2020
comment
Я попытался указать версию в файле yml, написав nodejs-version: «14.7.0». И я получил следующую ошибку: Не удалось загрузить плагин: не удалось загрузить свойства для opcproject: дополнительные свойства не разрешены («nodejs-yarn-version», «nodejs-version», «nodejs-package-manager» были неожиданными) - person KorJu; 31.07.2020