我为我们公司使用的库创建了nuget包。该库使用Fluent NHibernate 1.3.0.717和Structure Map 2.6.2。安装自创的Nuget包强制使用最新版本的依赖关系,
因为一些人使用StructureMap 2.6.3,我创建的软件包的依赖关系:
<dependencies>
<dependency id="FluentNHibernate" version="[1.3,)" />
<dependency id="structuremap" version="[2.6.2,)" />
</dependencies>
而当包的NuGet显示了它说,结构图> = 2.6.2要求。到现在为止还挺好。
问题出在这里: 当我将这个库添加到我的项目中时,它总是安装Structure Map 2.6.3。它甚至会从我的项目中卸载2.6.2,以便这样做。
我没有看到结构图2.6.3是FluentNHibernate(或其任何依赖关系)的依赖关系,所以我完全困惑于为什么它不会简单地将我的库添加到FluentNHibernate依赖关系中并离开我的StructureMap 2.6.2。
我不知道这与它有什么关系,但我们将这些软件包放在UNC共享上。
试着用'2.6.2';请参阅http://docs.nuget.org/docs/reference/version-range-specification –
不幸的是,这并不真正奏效。这个库的一些消费者正在使用2.6.3。 **他们**没有问题地工作,只有我使用与存在问题的库相同的结构图版本。 –