Angular 应用程序中的文件观察器是什么,以及如何清理它们? (达到文件观察者数量的系统限制)

问题描述 投票:0回答:1

我有一个简单的 Angular 应用程序,它是小型示例应用程序的集合。
(代码可以在on GitHub找到,主页是这里。)

我在本地工作。 当我这样做时,我的控制台突然出现以下错误:

Watchpack 错误(观察者):错误:ENOSPC:

达到文件观察者数量的系统限制,
观看'/home/tilman/Code/angular_examples/node_modules/blah/blah'

但是应用程序仍然可以工作。

似乎没有问题,除了我的控制台被淹没了。 一些细节:

   Ubuntu 20.04

   PyCharm 2024.1.3(专业版)
   角度 CLI:13.3.4
   节点:17.9.0(
不支持
,根据ng serve

   包管理器:npm 8.5.5
   
ng v
:65536
类似的问题也被问过 

2019 年的 React

2021 年的 Angular 答案大多听起来像:按一些按钮对我有用。
但我想知道这里发生了什么。
我不知道文件观察者是一个东西。

我需要它们吗?他们在哪里?为什么有这么多?如何清理它们?


建议的解决方案之一是删除并重新安装

/proc/sys/fs/inotify/max_user_watches

这不是解决问题的好方法。 (当我尝试重新安装时,如果某些东西消失了怎么办?)

React 问题的一个答案听起来很合理:

node_modules
添加到

webpack.config.js
我只是没有那个文件。
最初,错误适用于

watchOptions: { ignored: /node_modules/ }

中的所有类型的文件夹。

最终只有这四个在循环中重复:

node_modules

这是一个屏幕截图,在错误消息中显示
编译成功

screenshot


编辑:

Pycharm 中的弹出窗口将我发送到此支持页面:Inotify Watches Limit (Linux) 有人告诉我,我应该增加允许观看者的数量。 用户在 Angular 项目中也询问了同样的问题。
答案是,文件夹不能被排除在外。
但有一个提案用户可以投票:
https://youtrack.jetbrains.com/issue/IJPL-2175
无论如何,我已将

/home/tilman/Code/angular_examples/node_modules/jquery/dist /home/tilman/Code/angular_examples/node_modules/jquery /home/tilman/Code/angular_examples/node_modules/typescript/lib /home/tilman/Code/angular_examples/node_modules/typescript

添加到排除的文件夹中,现在问题消失了。 (它已经是橙色的,但是就像

node_modules
dist
一样,它没有出现在列表中。)

screenshot ignored folders

angular pycharm file-watcher
1个回答
0
投票
tmp

中的文件。

(因为没有什么应该改变的。)

我已将其添加到 Pycharm 中的排除文件夹中。显然这有效。

(请参阅问题末尾的屏幕截图。)


© www.soinside.com 2019 - 2024. All rights reserved.