我遇到了在项目之间共享dll以及之后构建解决方案的问题。简而言之,我将给出两个项目示例。 ' MyWebProject'和' MyService'。
我使用Vault作为源控件,它具有将同一.dll共享到存储库中的其他文件夹的功能。所以,' MyService'签入并作为所有其他项目的真实来源,这些项目已被共享'用。
此特定网络项目的解决方案还包含服务项目,因此,如果它是唯一使用“我的服务”的项目,我可以从Vault中删除bin / Release文件夹并且没问题,但是其他解决方案可能取决于“我的服务”'项目
因为' MyService'在Vault中有Release文件夹,当我尝试在发布模式下构建MyWebProject / MyService的解决方案时,我收到以下错误:
Error 1 Unable to copy file "obj\Release\MyService.dll" to
"bin\Release\MyService.dll". Access to the path
'bin\Release\MyService.dll' is denied.
如果我删除了' MyService.dll'来自' MyService / bin / Release'在我的工作文件夹中,检查发布文件夹内容并重建,然后错误就会消失,我可以检查我的解决方案的更改。
解决错误的另一种方法是将文件夹设置为不是只读的(这实际上可能会导致其他Vault问题),但这两者都只是在每次构建发布模式之前删除.dll似乎一个烦人的工作,而不是理想的解决方案..
我应该以不同方式在Vault中共享,还是有其他方法可以永久解决问题,而不必每次都记住解决方法?