WebStorm 中同时有许多相同的 Closure Compiler watcher 任务
Many same Closure Compiler watcher tasks in WebStorm at the same time
在 WebStorm 中,我的项目是一个由 10 个 js 文件和 Closure Compiler 组成的库,作为 WebStorm 中的文件观察器,将文件编译成一个文件。
Closure Compiler 文件观察器的参数是 ... --js 1.js --js 2.js ... --js 10.js --js_output_file mylib.min.js ...
当我修改其中一个文件并保存它时,我可以立即在 WebStorm 中看到 "background tasks",1 个新项目 "Executing 'Closure Compiler' task...",这很好。
问题:当我修改很多文件并做一个"Save"时,许多"Executing 'Closure Compiler' task..."出现在"background tasks"中(例如:5个任务如果修改了 5 个文件)。尽管只需要 1 个任务,但所有任务都在执行相同的 10 个文件编译。我的电脑有一段时间失控了 (100% CPU),我不得不取消除一个任务之外的所有任务,以便更快地完成它。
WebStorm 为每个修改后的文件启动一个观察程序任务,并且不明白同时启动许多相同的任务是没有意义的。
有没有办法在许多文件被修改的情况下获得单个观察者任务?
如果不是,是否至少有一种方法可以避免“100% CPU”问题(例如:降低 WebStorm 进程优先级)?
不,很遗憾,目前不可能;请关注 WEB-14086 获取更新
从 JetBrain 的 Alexander Doroshko 那里得到解决方案:
在文件观察器设置(特别是 'Arguments' 和 'Working directory' 字段)中删除所有文件特定的宏(以 $File 开头的宏)。
$FileDir
默认情况下在 'Working directory' 字段中,我删除了它并硬编码了路径。
虽然很多文件都变了,但我现在确实只有一个任务。
在 WebStorm 中,我的项目是一个由 10 个 js 文件和 Closure Compiler 组成的库,作为 WebStorm 中的文件观察器,将文件编译成一个文件。
Closure Compiler 文件观察器的参数是 ... --js 1.js --js 2.js ... --js 10.js --js_output_file mylib.min.js ...
当我修改其中一个文件并保存它时,我可以立即在 WebStorm 中看到 "background tasks",1 个新项目 "Executing 'Closure Compiler' task...",这很好。
问题:当我修改很多文件并做一个"Save"时,许多"Executing 'Closure Compiler' task..."出现在"background tasks"中(例如:5个任务如果修改了 5 个文件)。尽管只需要 1 个任务,但所有任务都在执行相同的 10 个文件编译。我的电脑有一段时间失控了 (100% CPU),我不得不取消除一个任务之外的所有任务,以便更快地完成它。
WebStorm 为每个修改后的文件启动一个观察程序任务,并且不明白同时启动许多相同的任务是没有意义的。
有没有办法在许多文件被修改的情况下获得单个观察者任务? 如果不是,是否至少有一种方法可以避免“100% CPU”问题(例如:降低 WebStorm 进程优先级)?
不,很遗憾,目前不可能;请关注 WEB-14086 获取更新
从 JetBrain 的 Alexander Doroshko 那里得到解决方案:
在文件观察器设置(特别是 'Arguments' 和 'Working directory' 字段)中删除所有文件特定的宏(以 $File 开头的宏)。
$FileDir
默认情况下在 'Working directory' 字段中,我删除了它并硬编码了路径。
虽然很多文件都变了,但我现在确实只有一个任务。