为什么流星NPM不断尝试从互联网上获得一个包(Why does Meteor-Npm keep tr

2019-10-20 14:19发布

这是我们的应用程序看上去开始像时:

=> Started proxy.
=> Started MongoDB.     
>>>>> IN ON_TEST
meteor-collection-management: updating npm dependencies -- mongodb...
=> Errors prevented startup:

While building package `meteor-collection-management`:
error: Can't install npm dependencies. Are you connected to the internet?

=> Your application has errors. Waiting for file change.

哎呀。 在流星收集管理/ package.js(我们自己包),有这样的:

Package.on_test(function(api) {
    console.log(">>>>> IN ON_TEST");
    Npm.depends({
      mongodb: "1.4.1"
    });
    api.use(['meteor-collection-management', 'tinytest', 'test-helpers']);
    api.add_files('tests/dbobject-test.js', ['client', 'server']);
    api.add_files('tests/enums-test.js', ['client', 'server']);
});

当我删除了NPM位,我现在可以没有它试图连接到网络的正常工作。 但是,这是一个完整的黑客攻击。

MongoDB的包下载是最好的,我可以告诉; 我们没有改变在年龄的版本号; 如果我有互联网连接的应用程序不会成功启动。

如何调试此,即使你不知道答案有什么想法?

Answer 1:

您的应用程序必须保持重新下载NPM模块的原因是,你可能有不同的版本流星多个应用程序。 当您运行其他应用(甚至相同的应用程序)与不同版本的流星,它清除了构建高速缓存,并强制故宫模块重建。

至少,这是新公共管理模块重建的主要原因。 如果您有多个应用程序,确保所有使用最新版本(也没有一个从devel的),否则将继续这样做。

其他原因可能是它不会安装的第一次,但在这种情况下,它会引发错误。



文章来源: Why does Meteor-Npm keep trying to get a package from the internet