使用Npm更新所有软件包

时间:2019-05-28 18:20:55

标签: node.js ubuntu npm

我有相当多的软件包已过时,我想更新。我尝试按照mapSeries中的描述运行npm update:npm update --depth 9999 -dev 更新花费了很长时间,最终失败了。我尝试了一些时间,将堆栈大小设置为无限制,等等,但是它总是要花费数小时,最终失败。

我尝试使用--depth 999(而不是9999)更新单个软件包,但同样失败。

有没有推荐的方法来更新所有有效的软件包?

**Edit:** At first I was getting  `MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 error listeners added. Use emitter.setMaxListeners() to increase limit`

然后我得到一个超出堆的异常:

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

最后,我得到了Max call stack size exceeded.

我将堆栈大小设置为无限制并降低了深度,但是它已经运行了数小时,没有结果。

2 个答案:

答案 0 :(得分:0)

运行:

npm cache clean

然后重试。

答案 1 :(得分:0)

事实证明,我以某种方式运行了4个npm更新作业。我杀死了它们,然后运行from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import Select from selenium.webdriver.support.ui import WebDriverWait b = webdriver.Chrome(r'''C:\Users\Florian\PycharmProjects\Auto_Reg\chromedriver''') b.get('https://mobilepanel2.nielsen.com/enrol/home?l=de_de&pid=9') b.find_element_by_xpath("//select[@id='platform']/option[contains(text(),'Android')]").click() b.find_element_by_xpath("//select[@id='deviceType']/option[contains(text(),'Smartphone')]").click() b.find_element_by_xpath("//label[contains(text(),'Männlich')]").click() ## until here, everything works fine select = Select(b.find_element_by_name('birthDate')) select.select_by_visible_text("13") ,获取了输出,并为每个软件包获取了npm outdated

然后我安装并运行了ran npm install <package>@<version>,它安装了另外一些软件包。