簡體   English   中英

使nuget包本機依賴項復制到輸出目錄中

[英]Make nuget package native dependencies to be copied in output directory

這里的重點是:我不是nuget包的作者,我只是在使用它。 就我而言,它是硒,但可以是任何東西。

我有我的項目BaseTest ,它具有基於Selenium的一些基本功能。 我也有TestNBaseTest Test1Test2 ,..., TestN項目。

現在,我運行測試,他們失敗的原因時的MSBuild構建解決方案它不會復制本地的依賴chromedriver.exe和硒失敗chromedriver is missing

我現在有兩個選擇要考慮:我可以將Selenium包添加到所有項目中, BaseTest理論上可能會消耗此BaseTest ,或者我可以手動對所有這些項目執行XCOPY 兩種選擇似乎都很丑陋。

有沒有更好的方法來執行這樣的操作?


我沒想到添加文件作為內容對傳遞依賴項有效(例如,根據此鏈接

但是,確實如此。 我對csproj更改如下

<ItemGroup>
    <Content Include="..\packages\Selenium.Chrome.WebDriver.2.33\driver\chromedriver.exe">
      <Link>chromedriver.exe</Link>
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
</ItemGroup>

它確實按預期工作。 感謝@sotn

您可以將chromedriver.dll包含到您的項目中(例如代碼文件),並將其“復制到輸出目錄”選項設置為“始終復制” /“如果更新則復制”。

如果您不想簽入dll,也可以將其添加為現有鏈接(添加現有項->添加為鏈接),然后將“復制到輸出目錄”選項應用於“始終復制” /“如果更新則復制” 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM