Jest: Ошибка: режим просмотра в Linux вызывает ошибку ENOSPC Node.js

Созданный на 4 апр. 2017  ·  77Комментарии  ·  Источник: facebook/jest

Версии:

  • Пряжа: v0.21.3
  • Узел: v6.9.2
  • npm: 3.10.9
  • Ubuntu: 16.10

Устанавливается с использованием : yarn global add jestchown в ~/.config/yarn/global/node_modules/ )

Ошибка команды: jest -c lib/tools/testing/jest.config.json --no-cache --watch

Если я запускаю jest -c lib/tools/testing/jest.config.json --no-cache тестирование работает на 100% нормально.

Сообщение об ошибке:

fs.js:1431
    throw error;
    ^

Error: watch /home/fooBar/dev/blah/lib/tools/testing/node_modules/core-js/modules ENOSPC
    at exports._errnoException (util.js:1022:11)
    at FSWatcher.start (fs.js:1429:19)
    at Object.fs.watch (fs.js:1456:11)
    at NodeWatcher.watchdir (/home/fooBar/.config/yarn/global/node_modules/sane/src/node_watcher.js:148:20)
    at Walker.<anonymous> (/home/fooBar/.config/yarn/global/node_modules/sane/src/node_watcher.js:361:12)
    at emitTwo (events.js:106:13)
    at Walker.emit (events.js:191:7)
    at /home/fooBar/.config/yarn/global/node_modules/walker/lib/walker.js:69:16
    at go$readdir$cb (/home/fooBar/.config/yarn/global/node_modules/graceful-fs/graceful-fs.js:149:14)
    at FSReqWrap.oncomplete (fs.js:123:15)

Tmp dir: yarn config set tmp /tmp/

Свободное место на диске: df -h / (использовано 11%)

Конфигурация Jest: в lib/tools/testing/jest.config.json

{
    "clearMocks": true,
    "bail": true,
    "transform": {
        ".(ts|tsx)": "<rootDir>/lib/tools/testing/node_modules/ts-jest/preprocessor.js"
    },
    "testResultsProcessor": "<rootDir>/lib/tools/testing/node_modules/ts-jest/coverageprocessor.js",
    "testMatch": [
        "**/__tests__/*.(ts|tsx|js)"
    ],
    "moduleFileExtensions": [
        "ts",
        "tsx",
        "js"
    ],
    "moduleDirectories": [
        "node_modules",
        "<rootDir>/lib/tools/testing/node_modules"
    ],
    "collectCoverage": true,
    "coverageDirectory": "./reports/",
    "coverageReporters": [
        "clover",
        "lcov",
        "text-summary"
    ],
    "coverageThreshold": {
        "global": {
            "branches": 50,
            "functions": 80,
            "lines": 60
        }
    },
    "collectCoverageFrom": [
        "{src,lib}/**/*.{ts,js}",
        "!lib/{tools}/**/*",
        "!**/{node_modules,vendor}/**"
    ]
}

Самый полезный комментарий

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Все 77 Комментарий

Это означает, что на вашем диске нет места. Пожалуйста, очистите свой диск.

@cpojer не уверен, прочитал ли вы вопрос, но;

Свободное место на диске: df -h / (занято 11%)

было упомянуто там - дисковое пространство, хотя и сообщалось как проблема, на самом деле не проблема.

Удар @cpojer

У меня такая же проблема, и на диске определенно есть свободное место

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

@cpojer Я посмотрю - но я также считаю, что это не ограничивается ОС Linux. Тем не менее, не возражаете ли вы повторно открыть этот номер?

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Спасибо за расследование, если вы установите сторож, он должен работать.

Совсем недавно перешли с Windows 7 на Ubuntu 16.04.2 LTS, и Jest отлично работал в Windows, но не работал под Linux по тем же причинам, которые указаны выше. Это только кажется неудачным, если вы добавите флаг --watch .

Сначала я воспользовался советом документами, снова запустил jest --watch и получил следующие ошибки:

jest --watch

events.js:163
      throw er; // Unhandled 'error' event
      ^

Error: A non-recoverable condition has triggered.  Watchman needs your help!
The triggering condition was at timestamp=1493335106: inotify-add-watch(/home/username/project_name/node_modules/browser-resolve/node_modules/resolve/example) -> The user limit on the total number of inotify watches was reached; increase the fs.inotify.max_user_watches sysctl
All requests will continue to fail with this message until you resolve
the underlying problem.  You will find more information on fixing this at
https://facebook.github.io/watchman/docs/troubleshooting.html#poison-inotify-add-watch

    at ChildProcess.<anonymous> (/home/username/project_name/node_modules/sane/node_modules/fb-watchman/index.js:207:21)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:194:7)
    at maybeClose (internal/child_process.js:899:16)
    at Socket.<anonymous> (internal/child_process.js:342:11)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:191:7)
    at Pipe._handle.close [as _onclose] (net.js:510:12)
npm ERR! Test failed.  See above for more details.

Это было полезно, так как подсказывает, что делать, поэтому я использовал исправление от @maraisr, и теперь jest работает над Ubuntu: tada:: beers:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Спасибо, что разобрались с этим @cpojer : +1: Как вы думаете, нужно что-то добавить на сайт Jest ?

Спасибо, братан @maraisr

@maraisr , знаете ли вы, есть ли случайно версия этого решения без sudo?

@vspedr не уверен - могу взглянуть!

Но мы затрагиваем там системные файлы, поэтому для безопасности вам потребуются повышенные разрешения. Если вы можете сделать себя sudoer, я считаю, что вы можете запускать эти команды без sudo.

Но да - я посмотрю и посмотрю, что у меня получится.

Может быть, мне что-то не хватает ... но зачем шутке что-то смотреть в моем каталоге node_modules ?
Как я могу настроить его так, чтобы он пропускал node_modules ?

@SimenB , как я вижу, watchPathIgnorePatterns пропускает файлы только после того, как часы уже запущены, поэтому запуск часов может занять много времени и иногда может бросить ENOSPC

Ах хорошо. Было бы неплохо PR, уважающий watchPathIgnorePatterns при настройке наблюдателей :)

@SimenB, не могли бы вы указать мне место в исходном коде, где он непосредственно запускает просмотр? Мне трудно найти это место

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

Массив строк шаблонов регулярных выражений, которые сопоставляются со всеми путями модулей, прежде чем эти пути будут считаться «видимыми» для загрузчика модуля. Если путь к данному модулю соответствует любому из шаблонов, в тестовой среде он не будет работать с функцией require ().

я прав?

@maraisr

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

это решение не работает на моем Mac OS 10.13.4, оно возвращает ошибку ниже

sysctl: illegal option -- p usage: sysctl [-bdehiNnoqx] name[=value] ... sysctl [-bdehNnoqx] -a sysctl: illegal option -- p usage: sysctl [-bdehiNnoqx] name[=value] ... sysctl [-bdehNnoqx] -a

Я не понимаю, почему эта ошибка «закрыта». Принуждение пользователя к sudo для повседневной задачи, безусловно, является ошибкой.

Это ошибка, уникальная для Jest: мокко, охранник и т. Д. Все смотрят определенные _subdirectories_, а не . , чтобы избежать этой проблемы. (Список подкаталогов может быть необязательным.)

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

У меня возникла эта проблема, когда у меня было открыто два экземпляра VSCode.

Пожалуйста, повторно откройте или добавьте исправление в устранение неполадок для тестирования.

Это заняло у меня ТАКОЕ много времени, чтобы найти и, наконец, исправить. Я снова и снова начинал искать обходные пути. Спасибо @ samit4me !

У меня это было с двумя открытыми экземплярами VSCode, что имеет полный смысл.

Чтобы избавиться от этой ошибки, просто используйте sublime / atom / gedit. Или вы можете закрыть VSCode во время сборки / отладки.

lsof | wc -l
может пролить свет на источник проблемы.
Любая программа, будь то браузер или построенная на веб-движке (например, код VS), резко увеличивает количество открытых файловых дескрипторов (около 30 000 и более на программу).
Я не вижу надежного обходного пути, т.к. Интернет-технологии стали повсеместными

Приветствую за указание в правильном направлении по этому поводу. У меня была такая же проблема с ошибкой часов, но в этом случае работал только один экземпляр VSCode. Закрытие этого, затем запуск моего проекта и повторное открытие разрешили его.

ИМО, недопустимо, чтобы на node_modules стояли часы.

В основном это рабочие (и куча удаленных) файлов из веб-движка, но не из node_modules, которые блокируют свободные узлы для наблюдателя.

Я получил эту ошибку при обновлении зависимостей проекта. Чтобы решить эту проблему, я просто удалил и установил node_modules

большое спасибо

@maraisr Отлично, echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p у меня сработало на Ubuntu 18.04.1 LTS

@maraisr Спасибо за ваше исправление, отлично работает на ubuntu 18, как говорит @xameeramir

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p исправил и у меня: +1:

Имейте в виду, что /etc/sysctl.conf обычно перезаписывается при обновлении (например, с Ubuntu 16 до 18 LTS) и удаляет более высокий предел. Меня об этом предупреждали, но в море других подобных предупреждений легко пропустить. Несмотря на то, что я _saw_ max_user_watches diff, я все еще был брошен в петлю сегодня утром, когда я впервые обнаружил ошибку, поскольку не очевидно, что эти вещи связаны. Однако, как только я попал на страницу с этой проблемой, стало ясно, что мне нужно исправить.

Ура повторно решить проблему, которую я исправил два года назад: смеется:

Забавная штука про fs.inotify.max_user_watches=524288
В моем случае кажется, что проект достаточно велик, поэтому 524288 недостаточно для числа. Итак ... ну, fs.inotify.max_user_watches=2048000 помогли.
Это также может быть связано с открытием большого количества вещей в коде vs на стороне.

Получение этого в ubuntu 18.10, когда я запускаю "npm start" в моем нетронутом девственном приложении create-response-app
РАБОТАЛ!!!
РЕШЕНИЕ
echo fs.inotify.max_user_watches = 2048000 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Для чего это стоит: возможно, это связано с окружающей средой (модуль X против модуля Y).

У меня есть 2 приложения ReactNative с 2 разными конфигурациями. В основном потому, что один из них использует React-Native-Camera, который еще не готов для последних версий RN (то есть: последний Gradle и подобная среда). Другой - демонстрация для тестирования последней версии RN и среды.

Приложение, использующее React-Native-Camera, компилируется безупречно (--variant = release) в Linux . Другой получил ошибку ENOSPC . Исправление "fs.inotify.max_user_watches" сработало. Я был типа «да?». По словам других, у меня на NAS тонны гигабайт ...

Вот "package.json" обоих приложений.

Может ты найдешь что-нибудь полезное.
Приложение 1 (Камера):

{
  "name": "********************",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "i18n-js": "^3.0.11",
    "react": "16.4.1",
    "react-native": "0.56.0",
    "react-native-camera": "^1.2.0",
    "react-native-languages": "^3.0.1",
    "react-navigation": "^2.16.0"
  },
  "devDependencies": {
    "babel-jest": "23.4.2",
    "babel-preset-react-native": "5.0.2",
    "jest": "23.5.0",
    "react-test-renderer": "16.4.1"
  },
  "jest": {
    "preset": "react-native"
  }
}

Приложение 2 (тестовая демонстрация):

{
  "name": "DemoReactNative",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "i18n-js": "^3.0.11",
    "react": "16.6.0-alpha.8af6728",
    "react-native": "0.57.3",
    "react-native-languages": "^3.0.1",
    "react-navigation": "^2.18.0"
  },
  "devDependencies": {
    "babel-jest": "23.6.0",
    "jest": "23.6.0",
    "metro-react-native-babel-preset": "0.48.1",
    "react-test-renderer": "16.6.0-alpha.8af6728"
  },
  "jest": {
    "preset": "react-native"
  }
}

мараиср
спасибо работает !!!

просто работает, как sudo работал для меня

@ 4E71-NOP Я видел то же самое. После обновления RN 0.51 до 0.57 мы начали сталкиваться с этой проблемой. Повышение лимита inotify помогло

Я использую sudo ... и мне это помогает

echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Это помогло мне для UBUNTU 18.10

Большое спасибо. Но, как уже упоминал Forcing the user to sudo for a mundane task is certainly a bug.

Есть идеи для обычного пользователя?

echo fs.inotify.max_user_watches = 524288 |

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Отлично решил мою проблему, большое спасибо!

Я исправил это, исключив node_modules с настройкой modulePathIgnorePatterns .

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Работал как шарм. Спасибо @maraisr !

[hayesmaker64<strong i="5">@gohan</strong> hype-layer]$ npm test

> [email protected] test /home/hayesmaker64/Workspace/twitch/hype-layer
> react-scripts test

internal/fs/watchers.js:173
    throw error;
    ^

Error: ENOSPC: System limit for number of file watchers reached, watch '/home/hayesmaker64/Workspace/twitch/hype-layer/node_modules/get-stream'
    at FSWatcher.start (internal/fs/watchers.js:165:26)
    at Object.watch (fs.js:1254:11)
    at NodeWatcher.watchdir (/home/hayesmaker64/Workspace/twitch/hype-layer/node_modules/sane/src/node_watcher.js:175:20)
    at Walker.<anonymous> (/home/hayesmaker64/Workspace/twitch/hype-layer/node_modules/sane/src/common.js:116:12)
    at Walker.emit (events.js:182:13)
    at /home/hayesmaker64/Workspace/twitch/hype-layer/node_modules/walker/lib/walker.js:69:16
    at go$readdir$cb (/home/hayesmaker64/Workspace/twitch/hype-layer/node_modules/graceful-fs/graceful-fs.js:162:14)
    at FSReqWrap.oncomplete (fs.js:141:20)
npm ERR! Test failed.  See above for more details.
[hayesmaker64<strong i="6">@gohan</strong> hype-layer]$ ^C
[hayesmaker64<strong i="7">@gohan</strong> hype-layer]$ ^C
[hayesmaker64<strong i="8">@gohan</strong> hype-layer]$ npm test

> [email protected] test /home/hayesmaker64/Workspace/twitch/hype-layer
> react-scripts test


Out of the box, Create React App only supports overriding these Jest options:

  • collectCoverageFrom
  • coverageReporters
  • coverageThreshold
  • globalSetup
  • globalTeardown
  • resetMocks
  • resetModules
  • snapshotSerializers
  • watchPathIgnorePatterns.

These options in your package.json Jest configuration are not currently supported by Create React App:

  • modulePathIgnorePatterns

If you wish to override other Jest options, you need to eject from the default setup. You can do so by running npm run eject but remember that this is a one-way operation. You may also file an issue with Create React App to discuss supporting more options out of the box.

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Это устранило проблему, с которой я столкнулся с Vue при запуске npm run serve Спасибо за предложение @maraisr

@pomber Спасибо, это решило мою проблему в Fedora без увеличения системных ограничений.

Спасибо @maraisr , это решило мою проблему :)

Большое спасибо! @maraisr

Ваше решение сработало для меня, @maraisr!
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Спасибо!

Это была моя ошибка для всех, кому интересно:
Журналы вашего проекта появятся ниже. Нажмите Ctrl + C, чтобы выйти.
(узел: 19425) UnhandledPromiseRejectionWarning: Ошибка: ENOSPC: Достигнуто системное ограничение на количество наблюдателей за файлами, смотрите '/ home / claire / Documents / my-app-name'
в FSWatcher.start (внутренний / fs / watchers.js: 165: 26)
в Object.watch (fs.js: 1274: 11)
в NodeWatcher.watchdir (/home/claire/Documents/my-app-name/node_modules/sane/src/node_watcher.js:175:20)
в новом NodeWatcher (/home/claire/Documents/my-app-name/node_modules/sane/src/node_watcher.js:45:8)
в createWatcher (/home/claire/Documents/my-app-name/node_modules/jest-haste-map/build/index.js:780:23)
в Array.map ()
в HasteMap._watch (/home/claire/Documents/my-app-name/node_modules/jest-haste-map/build/index.js:936:44)
в _buildPromise._buildFileMap.then.then.hasteMap (/home/claire/Documents/my-app-name/node_modules/jest-haste-map/build/index.js:355:23)
в processTicksAndRejection (внутренний / процесс / next_tick.js: 81: 5)
(узел: 19425) UnhandledPromiseRejectionWarning: необработанное отклонение обещания. Эта ошибка возникла либо из-за вызова асинхронной функции без блока catch, либо из-за отклонения обещания, которое не было обработано с помощью .catch (). (идентификатор отказа: 1)
(узел: 19425) [DEP0018] DeprecationWarning: необработанные отклонения обещаний устарели. В будущем необработанные отклонения обещаний завершат процесс Node.js с ненулевым кодом выхода.
ENOSPC: Достигнуто системное ограничение на количество наблюдателей за файлами, смотрите '/ home / claire / Documents / my-app-name'
ENOSPC: Достигнуто системное ограничение на количество наблюдателей за файлами, смотрите '/ home / claire / Documents / my-app-name'

Я исправил это, исключив node_modules с настройкой modulePathIgnorePatterns .

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

после этого, просто удалите node_modules папку и запустить npm install снова.

"modulePathIgnorePatterns": [
      "node_modules"
    ]

это настоящий ответ

Если вы постоянно сталкиваетесь с этой проблемой и не можете игнорировать node_modules , установка Watchman поможет:
https://facebook.github.io/watchman/

В Jest есть оптимизация для Watchman, поэтому он также значительно сократит время запуска крупных проектов.

Забегая вперед, я постараюсь, чтобы автоматическое отслеживание node_modules когда это могло бы вызвать этот тип ошибки (например: нет Watchman и нет Darwin, поэтому нельзя использовать fsevents ).

О, привет @scotthovestadt! Надеюсь ты в порядке!

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Это должен быть главный ответ. Люди - потушите, пожалуйста. Почему вы просто скажете: «Ой, недостаточно памяти / ресурсов - дайте ему больше памяти / ресурсов», не исследуя причину?

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

Linux де-факто является стандартом для всех профессиональных разработчиков. Вы действительно больше заботитесь о пользователях Windows и Mac? Это позор

@maraisr спасибо. Я решил проблему. : танцор:

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Это должен быть главный ответ. Люди - потушите, пожалуйста. Почему вы просто скажете: «Ой, недостаточно памяти / ресурсов - дайте ему больше памяти / ресурсов», не исследуя причину?

Просто примечание для протокола: настоящее исправление не работало до # 7585, которое исправило # 7544.

могут быть проблемы с разрешением попробуйте Sudo npm start

Эта команда увеличит количество разрешенных наблюдателей:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Источник

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

@maraisr Спасибо, ваше решение отлично работало на Ubuntu 18.04

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Спасибо, это решило мою проблему.

Будущие посетители и @sunnykeshri @JimmyBastos @BrotherDonkey @CodeMonkeyG , для моего здравомыслия, пожалуйста, прекратите распространять исправление ограничения просмотра.

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Это должен быть главный ответ. Люди - потушите, пожалуйста. Почему вы просто скажете: «Ой, недостаточно памяти / ресурсов - дайте ему больше памяти / ресурсов», не исследуя причину?

Будущие посетители и @sunnykeshri @JimmyBastos @BrotherDonkey @CodeMonkeyG , для моего здравомыслия, пожалуйста, прекратите распространять исправление ограничения просмотра.

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Это должен быть главный ответ. Люди - потушите, пожалуйста. Почему вы просто скажете: «Ой, недостаточно памяти / ресурсов - дайте ему больше памяти / ресурсов», не исследуя причину?

Приложение Create React ограничивает ключи, которые можно использовать в конфигурации пакета jest - нашел ли кто-нибудь способ решить эту проблему в приложении CRA?

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Спасибо resovel o проблема já tava procurando a horas o que era esse rro

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Просто примечание для улучшения, вам может быть лучше проинструктировать пользователей, чтобы они проверяли, что флаг / значение еще не существует, чтобы они не получали его дублирующих экземпляров. Имея это в виду, или воспользуйтесь каким-нибудь инструментом.

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

Спасибо за лучший ответ.

Судя по моим выводам, это вообще не имеет отношения к Jest. В Linux (или Mac) у нас есть максимальное количество наблюдателей за системой, которые мы можем разместить на уровне ввода-вывода (насколько я понимаю). Таким образом, для больших проектов кажется, что Jest пытается отслеживать просто путь ко многим файлам.

Чинить:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Источник: Node.JS Ошибка: ENOSPC

спасибо за ответ
это работа для меня

Спасибо @maraisr

Поскольку в последних нескольких комментариях предлагалось более раннее обходное решение, а более позднее исправление начинает теряться , я считаю необходимым повторить для будущих читателей (и @ karsa87 @igorgoiis ), что вы должны сначала попробовать более позднее исправление, если применимо, что изначально было невозможно из-за шутки:

Для будущих посетителей решение @pomber объективно намного лучше, чем увеличение лимита просмотра:

Добавьте это в свой package.json:

  "jest": {
    "modulePathIgnorePatterns": [
      "node_modules"
    ]
  }

Это должен быть главный ответ. Люди - потушите, пожалуйста. Почему вы просто скажете: «Ой, недостаточно памяти / ресурсов - дайте ему больше памяти / ресурсов», не исследуя причину?

Мне удалось исправить эту проблему с помощью sudo react-native start

Была ли эта страница полезной?
0 / 5 - 0 рейтинги