Мой код NODE не работает, потому что я использую Windows, а не Linux? - PullRequest
2 голосов
/ 05 марта 2019

Я получаю эту ошибку в Windows CMD:

> fastify-website@1.0.0 build:get-releases C:\Users\Karol\Desktop\wbs
> src/scripts/downloadReleases.js fastify/fastify build-temp/releases/ v0.11.0

'src' is not recognized as an internal or external command,
operable program or batch file.

Мой пакет.json:

"name": "fastify-website",
  "version": "1.0.0",
  "description": "A static website builder for metalsmith",
  "scripts": {
    "build:cleanup": "rimraf build-temp",
    "build:create-temp-folder": "mkdirp build-temp",
    "build:get-releases": "src/scripts/downloadReleases.js fastify/fastify build-temp/releases/ v0.11.0",

Описание

так что в основном npm start работает до сценария "build: get-Releases" ... Я попытался возиться с пакетом json, но это не помогло, также существует каталог src / scripts / downloadReleases.js.

Это потому, что он был написан обычно для Linux и я использую Windows? Потому что я готов установить Linux, если это правда, но мне нужно подтверждение

(PS Я скачал это прямо с github, и оно должно работать, поэтому я предполагаю, что linux может правильно прочитать это конкретное содержимое файла package.json)

1 Ответ

1 голос
/ 05 марта 2019

Да, это потому что вы не используете Linux.

Windows не поддерживает для shebangs , которые downloadReleases.js использует. Вы можете увидеть это в строке 1:

#!/usr/bin/env node

Эта строка указывает операционной системе, где найти правильный интерпретатор для скрипта. Простое исправление, которое вы или автор могли бы сделать, заключалось в использовании интерпретатора в команде следующим образом:

node src/scripts/downloadReleases.js fastify/fastify build-temp/releases/ v0.11.0

Это изменение позволит пользователям Windows и Linux запускать сценарии, если у них установлен node.

...