Node.js npm未读取.npmrc文件

Node.js npm未读取.npmrc文件,node.js,macos,npm,Node.js,Macos,Npm,我正在尝试从私有存储库安装库,但在尝试使用npm时不断出现错误 我正在使用: OSX小牛队10.9.3 节点v0.10.28 npm 1.4.10(这是在尝试使用1.4.13后安装的,但仍然不起作用) 我从我的主目录运行它,并且~/.npmrc文件在目录中 每当我运行命令时:npm安装'library name here' 我得到以下错误: npm http GET https://registry.npmjs.org/dslib-js npm http 404 https://registry

我正在尝试从私有存储库安装库,但在尝试使用npm时不断出现错误

我正在使用: OSX小牛队10.9.3 节点v0.10.28 npm 1.4.10(这是在尝试使用1.4.13后安装的,但仍然不起作用)

我从我的主目录运行它,并且
~/.npmrc
文件在目录中

每当我运行命令时:
npm安装'library name here'

我得到以下错误:

npm http GET https://registry.npmjs.org/dslib-js
npm http 404 https://registry.npmjs.org/dslib-js
npm ERR! 404 404 Not Found: dslib-js
npm ERR! 404 
npm ERR! 404 'dslib-js' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it
npm ERR! 404 
npm ERR! 404 Maybe try 'npm search dslib'
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, or http url, or git url.

npm ERR! System Darwin 13.2.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "dslib-js"
npm ERR! cwd /Users/marcos.pedreiro
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.10
npm ERR! code E404
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/marcos.pedreiro/npm-debug.log
npm ERR! not ok code 0
编辑:

当我运行
ls-a
(在主目录中)时,这是输出:

.           .ssh            Music
..          .subversion     Pictures
.CFUserTextEncoding .vagrant.d      Public
.DS_Store       Applications        VirtualBox VMs
.Trash          Desktop         clients
.bash_history       Documents       dev
.gradle         Downloads       npm-debug.log
.matlab         Google Drive        ~:.npmrc
.npm            Library         ~:.npmrc.template
.npmrc.bak      Movies
这是命令
npm config ls-l | grep config

; cli configs
globalconfig = "/usr/local/etc/npmrc"
userconfig = "/Users/marcos.pedreiro/.npmrc"
:结束编辑


任何帮助都将不胜感激。谢谢

我假设节点包
dslibjs
包含在您的私有npm存储库中。您需要在本地
.npmrc
文件中设置该存储库。例如,如果您的存储库位于
http://myrepo.com:4000
您可以运行以下命令:

$ npm set registry "http://myrepo.com:4000"

您在上面看到的错误是因为npmjs.org上没有包
dslib js
,您可以通过访问以下URL看到:。默认情况下(在
.npmrc
文件中未设置注册表),npm将搜索
https://registry.npmjs.org
(可以通过我上面粘贴的URL在web上浏览)。

如果您发布的内容确实是
ls-a
的输出,则文件名是错误的

~:.npmrc
应命名为
.npmrc

开头的~表示您使用了shell快捷方式将文件放置在主目录中(可能类似于
cp.npmrc~:.npmrc
。问题可能是冒号。
~/
将被解释为“我的主目录”,但
~something/
将被解释为名为
something
的用户的主目录。由于没有用户
something
,因此系统可能被视为~:文本

尝试重命名该文件,看看是否有效:

mv "~:.npmrc" .npmrc

以防有人登陆这里:我在项目根目录中有一个
npm shrinkwrap.json
文件,它覆盖了
注册表
配置,从
.npmrc
。删除shrinkwrap文件解决了这个问题。

对于运行Windows的人,检查Windows是否隐藏了文件扩展名。对于我来说,Windows说le名称为
.npmrc
,但实际文件名为
.npmrc.txt


删除
.txt
扩展名修复了该问题。

如果这对任何人都有帮助…我的问题是我在文本编辑器中创建了.npmrc文件,因此npm由于对该文件的权限而忽略了该文件。为了修复该问题,我删除了该文件。然后通过命令行重新创建了该文件


干杯!

我错过了几件下载在我的私人存储库中发布的软件包的事情

首先文件名是
.npmrc.txt
而不是
.npmrc
。在windows中,您无法直接创建文件名。因此,我打开命令提示符,然后启动

echo "auth_token" > .npmrc
Second我刚刚在
.npmrc
文件中粘贴了我的
auth\u令牌。您还必须附加注册表地址

//**.**.visualstudio.com/_packaging/**/npm/registry/:_authToken=token_here

在我的例子中,由于某种原因,字符编码是错误的,我不得不将其转换为UTF-8


我使用“npm get”来发现问题,结果充满了u/2411…字符串。

我遇到了一个场景,
npm ci
没有从.npmrc文件中拾取/读取配置

将其替换为
npm安装
解决了该问题


节点版本10.18.0

也许这就是OP有一个.npmrc文件的原因,并且正在寻求关于该文件被忽略原因的建议?它可能被忽略,但输出显示
npm http GEThttps://registry.npmjs.org/dslib-js
这让我相信文件存在,但没有注册表集。如果OP可以粘贴输出对于有助于回答此问题的
.npmrc
文件:)@Brandon很好,我错过了
.npmrc
文件的拼写错误:)您确定它是因为权限而被忽略的,还是因为它的文件扩展名错误?这发生在我身上。我使用
新建项
命令从Powershell创建了
.npmrc
文件,编码是
UCS-2 LE BOM
,而不是
UTF-8
。很好,我必须在记事本++中打开文件并更改编码。解决了这个问题。这发生在我身上。虽然我最初创建的文件是.npmrc,但记事本在我保存时添加了.txt。非常感谢,对我来说,名称是“.npmrc.npmrc”。您可以在Powershell的Windows上用“$mv.npmrc.txt.npmrc”重命名该文件