Я пытаюсь создать новый проект с помощью NativeScript и Angular. Я установил то, что описано здесь.
Когда я запускаю команду tns doctor, все в порядке. Вот он результат:
✔ Getting environment information
No issues were detected.
✔ Your ANDROID_HOME environment variable is set and points to correct directory.
✔ Your adb from the Android SDK is correctly installed.
✔ The Android SDK is installed.
✔ A compatible Android SDK for compilation is found.
✔ Javac is installed and is configured properly.
✔ The Java Development Kit (JDK) is installed and is configured properly.
✔ Local builds for iOS can be executed only on a macOS system. To build for iOS on a different operating system, you can use the NativeScript cloud infrastructure.
✔ Getting NativeScript components versions information...
✔ Component nativescript has 8.7.0 version and is up to date.
Но когда я запускаю tns create после установки имени и типа (Angular) проекта, а затем выбираю шаблон Hello World, он дает мне
spawn EINVAL
Есть ли решение?
Я использую Windows 11.
node -v
v20.12.2
npm -v
10.5.2
РЕДАКТИРОВАТЬ
Я запускаю эту команду
tns build android --log trace
И теперь у меня есть такая информация:
Failed to build plugin @nativescript/core :
Error: spawn EINVAL
Error: Failed to build plugin @nativescript/core :
Error: spawn EINVAL
at Errors.failWithOptions (C:\Users\giada\AppData\Roaming\npm\node_modules\nativescript\lib\common\errors.js:165:27)
at Errors.fail (C:\Users\giada\AppData\Roaming\npm\node_modules\nativescript\lib\common\errors.js:137:21)
at AndroidPluginBuildService.<anonymous> (C:\Users\giada\AppData\Roaming\npm\node_modules\nativescript\lib\services\android-plugin-build-service.js:508:30)
at Generator.throw (<anonymous>)
at rejected (C:\Users\giada\AppData\Roaming\npm\node_modules\nativescript\lib\services\android-plugin-build-service.js:12:65)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Кроме того, я понизил версию npm. Теперь у меня версия 10.3.0
Спасибо за ваш обходной путь. Я опубликовал обходной путь ниже. Надеюсь, исправление будет в ближайшее время.





Похоже, проблема связана с CVE, который требует, чтобы узел передал: {shell: true} в параметрах child_process.spawn. Это исправление уязвимости применимо только к узлам 18, 20 и 21.
Среда, 10 апреля 2024 г. Релиз по безопасности
Я решил это, перейдя на узел 16 и дождавшись обновления нативного скрипта.
Я решил это странным образом. Похоже, что новые установки nodejs не копируют все модули, необходимые для запуска нативного сценария. Итак... Я скопировал папку node_modules с компьютера, на котором ранее был установлен nodejs, и вставил эту папку в свой node_modules по пути %appdata%.