Мой проект dotnet имеет GeckoFx, определенный в его зависимостях NuGet. При восстановлении NuGet нужные файлы копируются в папку пакетов. Однако при сборке GeckoFx файлы должны быть скопированы в папку Firefox моего проекта, но это не так.
здесь - конец моего файла .csproj моего проекта, показывающий импорт GeckoFx
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Couchbase.Lite.Support.NetDesktop.2.1.2\build\Couchbase.Lite.Support.NetDesktop.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Couchbase.Lite.Support.NetDesktop.2.1.2\build\Couchbase.Lite.Support.NetDesktop.targets'))" />
<Error Condition="!Exists('..\packages\Geckofx45.45.0.34\build\Geckofx45.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Geckofx45.45.0.34\build\Geckofx45.targets'))" />
</Target>
<Import Project="..\packages\Couchbase.Lite.Support.NetDesktop.2.1.2\build\Couchbase.Lite.Support.NetDesktop.targets" Condition="Exists('..\packages\Couchbase.Lite.Support.NetDesktop.2.1.2\build\Couchbase.Lite.Support.NetDesktop.targets')" />
<Import Project="..\packages\Geckofx45.45.0.34\build\Geckofx45.targets" Condition="Exists('..\packages\Geckofx45.45.0.34\build\Geckofx45.targets')" />
и вот файл GeckoFx45.targets
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Firefox Include="$(MSBuildProjectDirectory)\Firefox\*.*" />
</ItemGroup>
<PropertyGroup>
<!-- Make CopyFiles target actually get executed.-->
<BuildDependsOn>
$(BuildDependsOn);
CopyFiles
</BuildDependsOn>
<!-- Copy Firefox files to output dir -->
</PropertyGroup>
<Target Name="CopyFiles">
<Copy SourceFiles="@(FIREFOX)" DestinationFolder="$(TargetDir)\Firefox" SkipUnchangedFiles="true" />
</Target>
</Project>
В конце сборки (зеленый свет) папка Firefox по-прежнему пуста, что означает, что приложение не сможет работать при попытке инициализировать веб-браузер. Если я вручную захожу и удаляю / переустанавливаю GeckoFx, то файлы копируются в папку Firefox, и все работает.
Но я бы хотел получить файлы в нужном месте, не перепрыгивая через переустановку NuGet.
Что я делаю не так?