Меню

Npm init y ошибка

C:UsersUserDesktopWEB DEV>npm init -y
npm ERR! Invalid name: «WEB DEV»

npm ERR! A complete log of this run can be found in:
npm ERR! C:UsersUserAppDataRoamingnpm-cache_logs2020-12-05T13_55_29_054Z-debug.log

C:UsersUserDesktopWEB DEV>

  • javascript
  • npm
  • visual-studio-code

asked Dec 5, 2020 at 14:02

Subrato Kumar Mahato's user avatar

2

  • why you dont jsut write npm init

    Dec 5, 2020 at 15:20

  • Rename the WEB DEV folder as WEB-DEV (i.e. no space character) and try again.

    Dec 5, 2020 at 16:23

1 Answer

answered Dec 5, 2020 at 14:06

keysl's user avatar

keyslkeysl

2,0971 gold badge11 silver badges16 bronze badges

I want to init a node.js jason file. I navigated to node_modules and typed in npm init, but as soon as I execute it and try to create the file i get an error (look below). I know what causes the error (no admin rights) but not how to fix it. I tried cleaning my cache too. I have windows 10 and whenever I type in sudo chown it says that this command doen´s exist. Thanks in advance!

npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "init"
npm ERR! node v6.9.5
npm ERR! npm  v3.10.10
npm ERR! path C:Program Filesnodejsnode_modulespackage.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall open

npm ERR! Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulespackage.json'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulespackage.json'
npm ERR!     at Error (native)
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'open',
npm ERR!   path: 'C:\Program Files\nodejs\node_modules\package.json' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "init"
npm ERR! node v6.9.5
npm ERR! npm  v3.10.10
npm ERR! path C:Program Filesnodejsnode_modulesnpm-debug.log.897946660
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall open

npm ERR! Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulesnpm-debug.log.897946660'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulesnpm-debug.log.897946660'
npm ERR!     at Error (native)
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'open',
npm ERR!   path: 'C:\Program Files\nodejs\node_modules\npm-debug.log.897946660' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     C:Program Filesnodejsnode_modulesnpm-debug.log

I want to init a node.js jason file. I navigated to node_modules and typed in npm init, but as soon as I execute it and try to create the file i get an error (look below). I know what causes the error (no admin rights) but not how to fix it. I tried cleaning my cache too. I have windows 10 and whenever I type in sudo chown it says that this command doen´s exist. Thanks in advance!

npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "init"
npm ERR! node v6.9.5
npm ERR! npm  v3.10.10
npm ERR! path C:Program Filesnodejsnode_modulespackage.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall open

npm ERR! Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulespackage.json'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulespackage.json'
npm ERR!     at Error (native)
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'open',
npm ERR!   path: 'C:\Program Files\nodejs\node_modules\package.json' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "init"
npm ERR! node v6.9.5
npm ERR! npm  v3.10.10
npm ERR! path C:Program Filesnodejsnode_modulesnpm-debug.log.897946660
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall open

npm ERR! Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulesnpm-debug.log.897946660'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, open 'C:Program Filesnodejsnode_modulesnpm-debug.log.897946660'
npm ERR!     at Error (native)
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'open',
npm ERR!   path: 'C:\Program Files\nodejs\node_modules\npm-debug.log.897946660' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     C:Program Filesnodejsnode_modulesnpm-debug.log

Я новичок в ReactJS, я следил за одним из руководств в «TutorialsPoint».

На шаге 2: после создания папки нам нужно открыть ее и создать внутри пустой файл package.json, запустив npm init из командной строки и следуя инструкциям.

C:UsersusernameDesktopreactApp>npm init

Выполнив указанную выше команду, я не могу создать и package.json. Только эта вещь появляется после запуска init.

enter image description here

На шаге 4: он просит добавить зависимости и плагины

На шаге 5: он просит открыть package.json и удалить "test": "echo "Error: no test specified" && exit 1" внутри объекта "scripts".

Как теперь открыть package.json, если я не был создан с самого начала?

7 ответов

Лучший ответ

Выполните запросы инициализации npm

Команда npm init «задаст вам кучу вопросов, а затем напишет для вас package.json . «

В первом запросе, как показано на снимке экрана, вас попросят ввести имя пакета. Вы можете просто нажать Enter , чтобы пропустить запросы и принять значения по умолчанию, если вы не уверены, какую информацию предоставить.

Вы также можете использовать -y / --yes, чтобы полностью пропустить вопросник. Например, npm init -y. (Примечание: -f / --force также работают.)

Каждое приглашение соответствует полю в файле package.json. Следовательно, вы можете создать этот файл самостоятельно или скопировать и изменить существующий из другого проекта.


31

gfullam
28 Авг 2018 в 15:53

Я сталкиваюсь с этой проблемой, когда набираю npm init и нажимаю ввод:

D:Reactbooking>npm init
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module './util.js'
npm ERR! Require stack:
npm ERR! - C:UsersSabbirAppDataRoamingnpmnode_modulesnpmnode_moduleslibnpxindex.js
npm ERR! - C:UsersSabbirAppDataRoamingnpmnode_modulesnpmlibinit.js
npm ERR! - C:UsersSabbirAppDataRoamingnpmnode_modulesnpmlibnpm.js
npm ERR! - C:UsersSabbirAppDataRoamingnpmnode_modulesnpmbinnpm-cli.js

npm ERR! A complete log of this run can be found in:
npm ERR!     C:UsersSabbirAppDataRoamingnpm-cache_logs2020-07-13T05_58_52_734Z-debug.log


0

Sabbir Pulak
13 Июл 2020 в 12:01

Как правило, это не требуется для установки пакетов. Если вы не используете npm init для папок, все пакеты могут работать без него.

Также для решения этой проблемы следует использовать

npm init --yes

При использовании с --yes в каталоге доступен файл .json. Кроме того, информация о файле .json зависит от пакета, который вы установили.


0

Jason Aller
21 Апр 2020 в 20:18

У меня была такая же проблема в каталоге моего проекта. когда я запускаю npm init , он выдает ошибку, что package.json не найден, полный журнал найден примерно так: «c: / user / node_modules / …».

Это связано с тем, что он перезаписывает существующий файл package.json или путь к файлу неверен. Также не предоставляется разрешение администратора на создание такого файла. так что попробуйте VS Code или IDE, которые вы все используете для запуска от имени администратора .

Итак, я помещаю свой проект на другой диск ** (E: диск) , а затем запускаю npm init **, он отлично работает и создает файл package.json.


0

akshay_sushir
26 Авг 2019 в 14:57

В package.json должны быть:

  • Имя состоит из одного слова в нижнем регистре, без пробелов, дефисов и подчеркиваний;
  • Версия в виде x.x.x;

Создать пустой файл package.json можно двумя способами:

  1. Запустите анкету интерфейса командной строки, чтобы создать package.json с указанными вами значениями . Для этого запустите команду:

    npm init

  2. Создайте файл package.json по умолчанию. Для этого вам просто нужно запустить ту же команду, но с флагом —yes или -y.

    npm init --yes

И он создаст файл package.json в каталоге, в котором вы запускаете команду, и отобразит код, показанный ниже:

{
  "name": "reactApp",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo "Error: no test specified" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}


1

Community
20 Июн 2020 в 09:12

Я новичок в npm. Я запутался, как и вы, когда пытался следовать руководству по npm. Вам просто нужно нажать клавишу «Enter» на клавиатуре после шага 2. Когда вы нажимаете «Enter», вы присваиваете ему значение по умолчанию. Таким образом, он сгенерирует файл json на основе информации по умолчанию … надеюсь, это поможет.


0

Yiqiuuu
8 Июн 2017 в 13:30

Вот ответ, который очень помогает в решении этой проблемы

Внимательно выполните следующие действия:

http://nodejs.org/download/ скачать 64-битную версию, 32-битную версию для хипстеров Установите его где угодно, по умолчанию: C: Program Files nodejs Панель управления -> Система -> Расширенные настройки системы -> Переменные среды Выберите ПУТЬ и отредактируйте его. Если переменная PATH пуста, измените ее на это: C: Users {ВАШЕ ИМЯ ПОЛЬЗОВАТЕЛЯ ЗДЕСЬ} AppData Roaming npm; C: Program Files nodejs

Если переменная PATH уже содержит C: Users {ВАШЕ ИМЯ ПОЛЬЗОВАТЕЛЯ ЗДЕСЬ} AppData Roaming npm, добавьте следующее сразу после:; C: Program Files nodejs

Если переменная PATH содержит информацию, но ничего не касается npm, добавьте ее в конец PATH:; C: Users {ВАШЕ ИМЯ ПОЛЬЗОВАТЕЛЯ ЗДЕСЬ} AppData Roaming npm; C: Program Files nodejs

Теперь, когда переменная PATH установлена ​​правильно, вы все равно будете сталкиваться с ошибками. Вручную перейдите в каталог AppData, и вы обнаружите, что внутри Roaming нет каталога npm. Создайте этот каталог вручную.

Перезапустите командную строку, и npm теперь будет работать.

Установка Node.js (и npm) в Windows 10


-1

Ali Khurram
17 Апр 2018 в 12:01

Поэтому я использую версию 8.1.0 из Node.Js, и когда я вызываю npm init для создания проекта, он переходит в версию и остается там. Я попытался нажать enter или выйти с ^ C, но ничего не происходит. Я ждал более часа, и он не прогрессировал вообще. Любая идея, что я должен делать?

Вот в основном то, что я вижу:
npm init error

Изменить: я попытался переустановить и все еще не работал; поэтому я удалил версию 8.1.0 и установил рекомендованный пользователем (6.11.0), и он отлично работает. Я уверен, что это ошибка в версии 8.1.0, но она мне нужна.

Изменить 2: О, я запускаю это в Windows 10.

4b9b3361

Ответ 1

Хорошо, это похоже на ошибку в 8.1.0 и будет исправлено во вторник.

https://github.com/nodejs/node/pull/13560#issuecomment-307565172

Ответ 2

Как и в предыдущих ответах, его ошибка на nodejs v 8.1.0, и решение состоит в том, чтобы дождаться нового предстоящего выпуска или понижения до предыдущих версий.

Но есть некоторые из нас, кто считает, что более любезно раздражает и не может дождаться этого нового исправленного выпуска:)!

Таким образом, простая работа без решения вашего nodejs заключается в создании package.json вручную в папке проекта.

Ниже представлен кадр файла.

{
  "name": "", //name of the app. ex "yourAppName"
  "version": "", //dafault is 1.0.0
  "description": "", // description of the app
  "dependencies": {
    "dependencieName": "version"
  }, //ex "shelljs": "^0.7.0"
  "devDependencies": {}, //same as the above
  "scripts": {
    "scriptName": "path/to/script"
  },
  "repository": {
    "type": "git", //git is the default
    "url": "git+https://github.com/yourUserName/yourRepoName" //link to your repo
  },
  "keywords": [],
  "author": "",  //the author, maybe you :)
  "license": "", //License type
  "bugs": {
    "url": ""  //ex "https://github.com/yourUserName/yourRepoName/issues"
  },
}

ПРИМЕЧАНИЕ. Вы должны удалить комментарии (начиная с // ), поскольку файлы конфигурации json по умолчанию не поддерживают комментарии, в противном случае см. https://www.npmjs.com/package/json-comments о том, как включить config.json комментарии

Ответ 3

В соответствии с тем, что я прочитал об этой проблеме на GitHub, вы можете обойти ее, переключившись на предыдущий Node v8.0.0 и npm v5.0.0. Это проблема с Node v8.1.0.

Исправление этой проблемы уже выполняется и должно быть реализовано в v8.1.1 из Node, который выпускается в паре дней. До этого перейдите к старой версии и посмотрите, работает ли это для вас.

Ответ 4

Да, я также столкнулся с этой проблемой, поэтому вы можете понизить версию node до версии LTS.

В настоящее время версия 6.11 — LTS.

Было бы проще понизить, если вы использовали nvm (Node Version Manager) для установки node.

Используйте ниже команды NVM

nvm install 6.11
nvm use 6.11

Ответ 5

У меня такая же проблема. Однако для обхода и создания файла package.json вы можете использовать флаг -y, и это создает файл со значениями по умолчанию, которые вы можете редактировать позже

$npm init -y

package.json not found Nodejs

In this blog post, learn how to fix the “package.json not found” error in the npm command.
You can also check other posts on npm command deprecate option is deprecated and Fix for digital envelope routines::unsupported

Fix package.json not found an error

package.json is a JSON configuration file of a nodejs project which contains metadata of an application + dependencies etc.

In NPM based applications such as nodejs, Angular, VueJS, and ReactJS applications, the package.json file location is the application root.

When you are creating a new project manually or when installing project dependencies we used to get the following errors.

  • package.json not found
  • ENOENT: no such file or directory package.json
  • npm can’t find a package.json file
  • no such file or directory package.json

Usually, this error comes when npm commands are running and not found package.json in the application root.

This error gives after running the npm command.

  • npm installs dependencies locally or globally
  • npm run start — running the project

There are no ways we can create a package.json file.

  • manually creation using a text editor
  • npm init command
  • npm init -y command

npm init command for generating package.json

npm, init command creates package.json that is filled with values that are entered by the user. It asks promptly to enter details as below.

This is the starting phase for any npm-based application creation.

 B:Workspaceblognpmcommand>npm init  
This utility will walk you through creating a package.json file.  
It only covers the most common items and tries to guess sensible defaults.  
  
See `npm help json` for definitive documentation on these fields  
and exactly what they do.  
  
Use `npm install ` afterward to install a package and  
save it as a dependency in the package.json file.  
  
Press ^C at any time to quit.  
package name: (npmcommand) mypackage  
version: (1.0.0)  
description:  
entry point: (index.js)  
test command:  
git repository:  
keywords:  
author:  
license: (ISC)  
About to write to B:Workspaceblognpmcommandpackage.json:  
  
{  
  "name": "mypackage",  
  "version": "1.0.0",  
  "description": "",  
  "main": "index.js",  
  "scripts": {  
    "test": "echo "Error: no test specified" && exit 1"  
  },  
  "author": "",  
  "license": "ISC"  
}  
  
  
Is this ok? (yes) yes

It creates the below package.json.

 {  
  "name": "mypackage",  
  "version": "1.0.0",  
  "description": "",  
  "main": "index.js",  
  "scripts": {  
    "test": "echo "Error: no test specified" && exit 1"  
  },  
  "author": "",  
  "license": "ISC"  
}

npm init -y with default package.json

This will not ask for any details and just creates a package.json file with default values. You can later change or modify using any text editor

The above command creates a default package json file Here is a package.json example.

{  
  "name": "npmcommand",  
  "version": "1.0.0",  
  "description": "",  
  "main": "index.js",  
  "scripts": {  
    "test": "echo "Error: no test specified" && exit 1"  
  },  
  "keywords": [],  
  "author": "",  
  "license": "ISC"  
}  

Once package.json is installed, You can install all the dependencies locally npm install –save-dev or npm install -g

Node.js делает возможным написание серверных приложений на JavaScript. Он построен на движке JavaScript V8 и написан на C++ — и поэтому он быстрый. Изначально он создавался как серверное окружение для приложений, но разработчики начали использовать его для создания инструментов, помогающих автоматизировать выполнение локальных задач. В итоге возникшая вокруг Node.js новая экосистема инструментов (типа Grunt и Gulp), привела к трансформации процесса фронтенд-разработки.

Чтобы использовать все эти инструменты (или пакеты) в Node.js нам нужна возможность устанавливать и управлять ими. Для этого создан npm, пакетный менеджер Node.js. Он устанавливает нужные вам пакеты и предоставляет удобный интерфейс для работы с ними. Но перед тем как начать использовать npm, вам надо установить в своей системе Node.js.

Содержание

  • Установка Node.js
  • Пакеты Node
  • Изменение места установки глобальных пакетов
  • Глобальная установка пакетов
  • Вывод списка установленных пакетов
  • Локальная установка пакетов
  • Вывод списка локальных пакетов
  • Удаление локальных пакетов
  • Установка определенной версии пакета
  • Обновление пакета
  • Поиск пакетов
  • Управление кэшем
  • Управление зависимостями
  • Менеджеры версий
  • Заключение
  • Инструкции по NPM
    • Как посмотреть список всех команд Node.js
    • Как узнать версию установленного Node.js
  • Команды для NPM и работы с пакетами, модулями
    • Как обновить NPM
  • Инициализация пакетов NPM
  • Работа с NPM-пакетами
    • Удалить пакет:
    • Удалить глобально установленный пакет:
    • Обновить пакеты:
  • Обновление пакетов NPM при изменении мажорной версии
  • Node.js за 5 минут
  • Пакеты в Node.js
    • Файл package.json
    • Скачивание пакетов
    • Публикация пакета
    • Использование пакета в качестве исполняемого файла
  • Установка Grunt с помощью npm
    • Рекомендуем к прочтению

Установка Node.js

Перейдите на страницу загрузок Node.js и скачайте нужную вам версию. Есть установщики для Windows и Mac, а также скомпилированные бинарники и исходный код для Linux. Кроме того, в Linux вы можете установить Node.js с помощью пакетного менеджера, все это описано в документации.

В этой статье мы будем использовать стабильную версию 5.7.0.

Посмотреть, где установлен Node и проверить версию можно следующими командами:

Чтобы удостовериться, что установка прошла успешно, выполним несколько команд в простой интерактивной среде Node (REPL).

Установка работает, поэтому теперь мы можем сфокусироваться на npm, который включен в установку.

Пакеты Node

С помощью npm можно устанавливать пакеты локально или глобально. В локальном режиме пакеты устанавливаются в каталог node_modules родительского каталога. Владельцем каталога является текущий пользователь. Глобальные пакеты устанавливаются в каталог /lib/node_modules/ , владельцем которого является root (префиксом в данном случае обычно является каталог /usr/ или /usr/local ). Это значит, что вам надо использовать sudo для глобальной установки пакетов, что может повлечь ошибки с полномочиями при разрешении сторонних зависимостей, а также создает проблему для безопасности. Изменим это:

Npm init не работает

Изменение места установки глобальных пакетов

Посмотрим, что скажет нам команда npm config .

Мы получили основную информацию об установке. Теперь важно узнать место установки глобальных пакетов:

Этот префикс мы хотим изменить так, чтобы устанавливать пакеты в свой домашний каталог. Для этого создайте в домашнем каталоге папку .node_modules_global и укажите ее в качестве места установки пакетов в конфигурации:

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

Сам npm по-прежнему установлен в каталог, владельцем которого является root. Но так как мы поменяли место установки глобальных пакетов, мы можем использовать полученное преимущество. Мы установим npm еще раз, но теперь в место, указанное нами. Заодно мы получим последнюю версию npm.

Наконец, нам надо добавить .node_modules_global/bin в нашу переменную окружения $PATH , чтобы мы могли запускать глобальные пакеты из командной строки. Сделаем это, добавив следующую строку в файл .profile или .bash_profile и перезапустив терминал.

Теперь командная оболочка будет сразу находить пакеты, установленные в .node_modules_global/bin и использовать корректную версию npm .

Глобальная установка пакетов

На данный момент у нас уже есть один глобальный пакет — это сам пакет npm. Изменим это и установим еще один пакет, это будет UglifyJS (инструмент для минификации JavaScript). Для глобальной установки используется флаг —global , его можно записывать сокращенно -g .

Как вы можете видеть из вывода в консоль, у нас установлены дополнительные пакеты — это зависимости UglifyJS.

Вывод списка установленных пакетов

Мы можем вывести список глобально установленных пакетов с помощью команды npm list с опцией —global :

Такой вывод списка, со всеми зависимостями, перенасыщен. Мы можем выводить его в более читаемом виде с помощью опции —depth=0 :

Стало лучше — теперь мы видим только список установленных пакетов с номерами их версий, без зависимостей.

Теперь мы можем обрабатывать файлы JavaScript в терминале с помощью UglifyJS. Например, следующая команда сделает из файла example.js минифицированный example.min.js :

Локальная установка пакетов

Локальная установка используется в npm по умолчанию, то есть достаточно не использовать флаг —global . Пакет будет установлен в каталог node_modules родительского каталога. Создадим каталог с проектом в нашем домашнем каталоге:

Вывод списка локальных пакетов

Также как и в случае с глобальными пакетами, список локальных выводится командой npm list :

Как видите, мы можем устанавливать локальные пакеты, где угодно. Это также значит, что мы можем создать другой каталог и установить туда другую версию пакета (в нашем случае это библиотека underscore).

Удаление локальных пакетов

Так как npm это пакетный менеджер, у него есть возможность удалять пакеты. Предположим, что установленная в предыдущем примере версия underscore вызывает проблемы с совместимостью. Мы можем удалить этот пакет и поставить более старую версию.

Установка определенной версии пакета

Теперь установим нужную версию underscore. В команде установки номер версии указывается после символа @ :

Обновление пакета

В последней версии underscore исправили мешавший нам баг и мы хотим обновить версию этого пакета.

Примечание: для этой статьи, библиотека underscore была указана как зависимость в package.json (см. управление зависимостями).

Поиск пакетов

Мы уже пару раз использовали команду mkdir . Есть ли пакет node с подобным функционалом?

Такой пакет нашелся (mkdirp), установим его.

Теперь создадим файл mkdir.js :

И запустим его в терминале:

Управление кэшем

После установки пакета npm сохраняет его копию в кэше, поэтому при следующей его установке вам не нужно беспокоить сеть. Кэш хранится в каталоге .npm вашего домашнего каталога.

Этот каталог со временем замусоривается старыми пакетами и иногда его полезно очищать.

Управление зависимостями

В нашем проекте пока только два пакета, но их количество очень быстро возрастает. Установка зависимостей вручную очень неудобна, поэтому для управления ими мы можем использовать файл package.json , расположив его в корне нашего проекта. Он генерируется с помощью команды npm init , которая выведет в консоль несколько вопросов для создания файла:

В результате мы получим файл со следующим содержимым:

Вы можете сгенерировать это файл и более простым способом, с помощью опции —yes (автоматический ответ “да” на все вопросы):

Файл package.json будет создан в качестве name будет использовано название каталога.

Вы также можете добавить private: true , чтобы предотвратить случайную публикацию частных репозиториев или подавления любых предупреждений при выполнении npm install . Создадим новый каталог и используем package.json для установки зависимостей.

Это показывает, как просто мы можем установить пакеты, нужные нам в другом каталоге на основе нашего файла package.json . Но как поддерживать его актуальность при установке новых пакетов? Для этого используется флаг —save .

Наш файл package.json также обновился:

Менеджеры версий

Есть пара инструментов, позволяющих использовать несколько версий Node.j на одном компьютере. Первая это n, другая — nvm(Node Version Manager). Если вас интересует эта возможность, подробнее о ней можно узнать из следующей статьи: Install Multiple Versions of Node.js using nvm.

Заключение

В этой статье освещены основы работы с npm. Я показал, как установить Node.js, как изменить место установки глобальных пакетов (так мы можем избежать использования sudo ) и как установить пакеты локально и глобально. Я также рассмотрел удаление, обновление и установку определенной версии пакета, а также управление зависимостями проекта.

В каталоге npm тысячи пакетов и их число будет расти, с учетом анонса jQuery о публикации всех плагинов как пакетов npm.

ГИД по командам консоли для работы с менеджером пакетов NPM: как установить, обновить или удалить установленный модуль или пакет NPM и другие команды NPM

Npm init не работает

Современная разработка очень тесно связана с использованием Node JS. В свою очередь Node JS используется как оболочка для работы с NPM и его пакетами (всем известная папка node_modules).

В данной статье я постараюсь перечислить все самые популярные команды для NPM: установка, обновление, удаление пакетов и др.

И всё таки думаю что стоит для начала упомянуть пару важных консольных команд для Node JS.

Как посмотреть список всех команд Node.js

Чтобы посмотреть список всех команд доступных в Node.js, для этого нужно ввести в консоли команду:

Как узнать версию установленного Node.js

— для этого есть команда node —version или короткий вариант команды этой же команды node -v . Так как краткость — сестра таланта, я пользуюсь командой:

Команды для NPM и работы с пакетами, модулями

Если расписывать команды NPM-а, то так же начнём с того как в консоли вывести все доступные команды нпма.

Cписок всех доступных команд пакетного менеджера (npm) выведится если в консоли ввести команду npm help или сокращённый вариант npm -h :

Команда npm -h вывалит в консоли такой список доступных команд:

access, adduser, audit, bin, bugs, c, cache, ci, cit, completion, config, create, ddp, dedupe, deprecate, dist-tag, docs, doctor, edit, explore, get, help, help-search, hook, i, init, install, install-test, it, link, list, ln, login, logout, ls, outdated, owner, pack, ping, prefix, profile, prune, publish, rb, rebuild, repo, restart, root, run, run-script, s, se, search, set, shrinkwrap, star, stars, start, stop, t, team, test, token, tst, un, uninstall, unpublish, unstar, up, update, v, version, view, whoami

Чтобы посмотреть инструкции для какой то из этих команд, для этого нужно ввести в консоли команду npm help COMANDA , где COMANDA — это название команды из списка.

Например посмотреть инструкции для обновления:

В установленном по умолчанию браузере откроется страница с инструкциями по данной команде. Инструкции находятся локально и не требуют подключения к интернету.

Как узнать версию NPM

Чтобы узнать установленную версию npm, нужно ввести в терминале команду npm —version или сокращённый вариан данной команды npm -v :

Как обновить NPM

В отличии от Node.js, NPM знает как обновить себя! Чтобы обновить свой NPM до последней версии, вводим в терминале такую команду:

Инициализация пакетов NPM

Инициализация пакетов — это процесс быстрой установки пакетов NPM-а, которые прописаны в файле package.json

Команда npm init создаст файл package.json или установит прописанные пакеты из файла package.json если он уже создан.

Работа с NPM-пакетами

Установить пакеты из файла package.json :

npm скачает и установит все пакеты указанные в файле package.json

Посмотреть список установленных пакетов:

Посмотреть список установленных пакетов, которые требуют обновления:

Список глобально установленных пакетов требующих обновления:

Команда npm install package — позволяет установить любой пакет по его имени. Если при этом к команде добавить префикс -g пакет будет установлен глобально на весь компьютер.

Глобальная установка пакета:

Удалить пакет:

Удалить глобально установленный пакет:

Обновить пакеты:

И в заключение, если вы пользуетесь конролем версий Git, то незабудьте добавить в файл .gitignore исключение для папки node_modules, чтобы гит не индексировал файлы из этой папки. Для этого создайте файл .gitignore если он у вас ещё не создан и пропишите в нём отдельной строкой:

Обновление пакетов NPM при изменении мажорной версии

Если у пакета NPM сменилась версия на мажорную, то есть была изменена первая цифра в версии пакета (например установлена версия пакета 4.19.1, а последняя версия 5.3.0), то она не обновится командой npm up . Это сделано в целях безопасности.

Для обновления мажорной версии есть такая команда:

— в итоге будут обновлены все пакеты.

. Делайте такое обновление только в случае если вы уверены и понимаете что делаете. Мажорная версия несёт изменения для которых есть изменения в настройках.

Посмотрите это видео, где есть понятное объяснение по версиям пакетов NPM:

*** Авторизируйтесь чтобы писать комментарии.

Npm init не работает

Эта статья предназначена для тех, кто не очень дружит с Node.js, но хочет использовать приложения вроде Grunt, Gulp и тому подобные. Процесс работы с этими приложениями подразумевает редактирование файла package.json и использование команд npm, так что понимание принципов работы npm поможет вам справиться с трудностями.

Node.js за 5 минут

Понимание того, что такое Node.js поможет вам лучше разобраться с npm. В двух словах — Node.js это интерпретатор языка JavaScript. Сам по себе Node.js является приложением, которое получает на входе и выполняет его.
Давайте создадим простую программу. Создайте файл helloworld.js и поместите в него следующий код:

Теперь откройте терминал, зайдите в папку с вашей программой и выполните команду node helloworld.js . Вместо helloworld.js может быть любой другой файл с . Убедитесь, что у вас установлен Node.js. Результат выполнения программы будет выглядеть примерно так:

Npm init не работает

Программа просто выведет строку «Hello World» в терминал.

Пакеты в Node.js

Вкратце, пакетом в Node.js называется один или несколько , представляющих собой библиотеку или инструмент.
npm (аббр. node package manager) — это стандартный менеджер пакетов, автоматически устанавливающийся вместе с Node.js. Он используется для скачивания пакетов из облачного сервера npm, либо для загрузки пакетов на эти сервера.

Файл package.json

Файл package.json содержит в себе информацию о вашем приложении: название, версия, зависимости и тому подобное. Любая директория, в которой есть этот файл, интерпретируется как Node., даже если вы не собираетесь публиковать его.
Способ использования файла package.json зависит от того, собираетесь ли вы скачивать пакет или публиковать его.

Скачивание пакетов

Если вы хотите скачать пакет вручную, вам необязательно использовать для этого package.json. Вы можете выполнить в терминале команду npm с названием нужного пакета в качестве аргумента команды, и пакет будет автоматически скачан в текущую директорию. Например:

Также для скачивания пакетов вы можете использовать package.json. Создайте в директории вашего проекта файл package.json, и добавьте в него следующий код (мы не указываем название нашего пакета и версию, мы не собираемся его публиковать; мы указываем название и версию пакетов для загрузки):

Затем сохраните файл и выполните в терминале команду npm install .
Если вы хотите использовать в своём проекте множество пакетов, то лучше указать их package.json вместо того, чтобы каждый раз скачивать их через терминал.
Если вы используете package.json для скачивания пакетов, то получается, что вы создаёте пакет для скачивания пакетов. Я знаю, что это странно, но это работает.
Если пакет имеет зависимости, то npm найдёт их через package.json загружаемого пакета и скачает их. В нашем случае у пакета тоже есть файл package.json с прописанными в нём зависимостями.

Публикация пакета

Чтобы опубликовать пакет, вам потребуется собрать все исходные коды и файл package.json в одной директории. В package.json должны быть указаны название, версия и зависимости пакета. Например:

Посмотрев на этот код, мы можем сказать, что пакет зависит от пакета . Опубликовать пакет можно с помощью комадны npm publish .

Использование пакета в качестве исполняемого файла

Когда npm скачивает пакет, он ищет свойство «bin» в файле package.json. Если он находит это свойство, то он конвертирует этот пакет в исполняемый файл и размещает его в указанной директории.
Например, команда ниже загружает в текущую директорию и конвертирует исходники в исполняемый файл, который затем помещается в папку со всеми исполняемыми файлами. Вследствие этого мы сможем вызвать команду .

Теперь вы знаете, что такое пакет и как он может зависеть от других пакетов. Также вы узнали, как npm работает с пакетами. Давайте перейдём от теории к практике и установим Grunt.

Установка Grunt с помощью npm

Grunt это , позволяющий автоматизировать многие повседневные задачи вроде сжатия изображений и минификации .
Выполните следующие шаги, чтобы установить Grunt и начать работу с ним.

  • Создайте директорию для вашего проекта. С точки зрения сервера эта директория будет корневой.
  • Откройте эту директорию через терминал.
  • Теперь скачайте и установите Grunt. Аргумент -g указывает npm на то, что пакет следует скачивать в основную папку для хранения пакетов, а не в текущую директорию.

Для каждой задачи, выполняемой grunt’ом, есть отдельный пакет. Например, можно найти пакеты для минификации JavaScript, склеивания файлов и так далее. Также вы можете создавать собственные пакеты для выполнения задач; такие пакеты будут называться . Давайте установим нужные нам пакеты в директирии нашего проекта. Для этого нам понадобится создать файл package.json и поместить в него код ниже. Затем выполните команду npm install . Она загрузит нужные пакеты. Помните о том, что директория, содержащая package.json, сама является пакетом.

Мы установили пакет для склеивания файлов. Теперь нам надо описать задачу для Grunt. Это делается с помощью файла Gruntfile.js. Когда вы выполняете команду grunt в директории проекта, Grunt будет искать Gruntfile.js, чтобы загрузить и выполнить задачи. Давайте подключим наш плагин для склеивания файлов и опишем простую задачу.

  • По этому принципу вы можете сами скачать и подключить нужные плагины.
  • Теперь вы можете запустить команду grunt в директории вашего проекта, чтобы склеить .
  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии

    А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Npm err a complete log of this run can be found in вылетает ошибка
  • Np 41772 1 ошибка ps4 как исправить на русском