假设我在 nUnit 2.1 之上写了 SuperTest ,我想与全世界分享我的创作。 Jess很想使用我的库,她也想直接使用 nUnit 。她的应用 HeadBook 使用 nUnit 2.8
我可以看到来源版本的方案:
我在二进制版本中看到的情景:
我正在尝试找出设置此项目的最佳方法。看起来最好的方法是包含一个nUnit副本,有一个本地引用和ilmerge作为构建步骤。
我想避免 SuperTest 使用我未经过测试的不同版本的依赖项重新编译,但我可能还想避免使用gac,因此部署是无痛的。
ilmerge会是最好的方法吗?
答案 0 :(得分:0)
我认为最好的方法是尝试遵循nUnit版本,以便SuperTest始终与上游依赖项同步。这样,您就可以获得与上游匹配的源版本(SCM上的分支)和二进制版本(只需构建一次),而您不需要任何此类版本。
如果不这样做,即你不能承诺遵循nUnit版本,我倾向于同意捆绑你自己的版本和合并程序集对每个人来说都是最容易的。
答案 1 :(得分:0)
签署二进制版本。具有强名称的程序集将根据需要并排加载正确的版本。然后你包括你正在使用的nUnit 2.1程序集的副本,你已经完成了设置。