TL; DR:
我的项目依赖于"dep": "snapshot"
其中'快照'是一个标签。正在运行npm install
无法获取" dep"。
全文:
所以就在最近,我开始使用一个JS项目,并且......总而言之,我通过本地安装的Nexus设置了自己的私人仓库。
让我们调用我的项目myProj1
。
我在我的.npmrc
中添加了Nexus注册表,如下所示:
registry=http://nexus:8081/nexus/content/groups/npm-all/
一切都很好,我尝试在发布任何生产就绪代码之前发布快照版本。
这包括运行npm-snapshot X
,其中X是我的快照编号。 (它基本上是一个将package.json
版本标记更改为1.0.0-SNAPSHOT.24
(如果X = 24)的插件
npm publish --tag=snapshot --registry=http://nexus:8081/nexus/content/npm-internal
它将代码推送到我的Nexus,一切似乎都很好。标签"快照"在我的nexus注册表中更新到最近发布的版本。 (1.0.0-SNAPSHOT.24)
然后我有另一个项目,它依赖于上面指定的package.json
"dependencies": {
"myProj1": "snapshot"
}
模块:
npm install
所以我在项目根目录中运行myProj1
,并且'并且,依赖性得到了完美的下载,一切都很棒!
现在我的问题出现了:
然后我决定更新1.0.0-SNAPSHOT.25
中的一些内容,让我使用上面相同的命令发布另一个快照版本。 (导致新发布的工件被版本化npm install
)我的Nexus很棒并且发布新的依赖项,就像它应该的那样,也更新了dist-tag" snapshot"到新建的版本。
HOWEVER ,当我从其他项目运行myProj1
时,相信我应该获得更新版本的props
,没有任何反应。 它不会获取较新的快照版本。为什么?
我是否误解了对dist-tag的依赖?我能以其他方式这样做吗?
此致