Tendo problemas para obter MSBuild e MSBuildCommunityTasks (VSS) para trabalhar em conjunto

StackOverflow https://stackoverflow.com/questions/205676

  •  03-07-2019
  •  | 
  •  

Pergunta

Eu estou tentando aprender como fazer certas tarefas de controle de origem com VSS e MSBuildCommunityTasks, como como usar tarefas como GetVSS e VssLabel? Docs não deixar isso claro. E quando eu picar uma vara para ele para ver se as mensagens de erro pode me dizer qualquer coisa, ele não é realmente muito claro o que fazer em seguida, também. Deixe-me mostrar o que estou fazendo eo que eu estou recebendo -. Espero que alguém pode me apontar na direção certa

Project é escrito em C # usando VS2005. Aqui está a fonte de arquivo de projeto MSBuild:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>
    <Target Name="GetLatestVersionVSS">
        <VssGet DatabasePath="C:\VSS\Astronom_VSS" 
            Path="$/Astronom_VSS" 
            LocalPath="C:\VisualStudioSource\AstronomySolution\Astronom" UserName="build" Password="build" />
    </Target>
    <Target Name="Compile" DependsOnTargets="GetLatestVersionVSS">
        <MSBuild Projects="Astronomer.x.csproj" />
    </Target>
</Project>

Recebo mensagens de erro da seguinte forma:

Target GetLatestVersionVSS:
C:\Documents and Settings\michaelc\My Documents\Visual Studio 2005\Projects\Astronom\Astronomer\msbuild_UseVSS.xml(7,5): 
   error MSB4018: The "VssGet" task failed unexpectedly.
C:\Documents and Settings\michaelc\My Documents\Visual Studio 2005\Projects\Astronom\Astronomer\msbuild_UseVSS.xml(7,5): 
   error MSB4018: System.IO.FileNotFoundException: Could not load file or assembly 
   'Microsoft.VisualStudio.SourceSafe.Interop, Version=5.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 
   or one of its dependencies. The system cannot find the file specified.
C:\Documents and Settings\michaelc\My Documents\Visual Studio 2005\Projects\Astronom\Astronomer\msbuild_UseVSS.xml(7,5): 
   error MSB4018: Filename: 'Microsoft.VisualStudio.SourceSafe.Interop, Version=5.2.0.0, Culture=neutral, 
   PublicKeyToken=b03f5f7f11d50a3a'
...And so on.

Ocorre-me que eu poderia precisar para colocar algum tipo de item de importação lá para apontar para VSS, especificamente para apontar para Microsoft.VisualStudio.SourceSafe.Interop, mas não consigo encontrar um arquivo .dll com esse nome, e não está na lista de componentes na guia .NET da caixa de diálogo Add Reference no Visual Studio.

Foi útil?

Solução

OK, eu estou respondendo a minha própria pergunta.

MSBuildCommunityTasks requer Visual Source Safe 2005, o que vem com o VS2005. Estamos, no entanto, ainda usando VSS 6.0d, e MSBuildCommunityTasks não funciona com ele. guia do desenvolvedor para os estados tarefas:

Developer's Guide for http://msbuildtasks.tigris.org/
=====================================================

Build Environment Prerequisites
------------------------------
- .NET2.0
- MSBuild; typically already installed as part of .NET2.0,
  for example in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe
- NUnit 2.2.X (http://www.nunit.org/);
  necessary to run the tests
- Microsoft Visual SourceSafe(R) 2005;
  the library Microsoft.VisualStudio.SourceSafe.Interop gets referenced
- NDoc 1.3 (http://ndoc.sourceforge.net/)
  additionally configure NDoc to use .NET2; see
  http://ndoc.sourceforge.net/wiki/dotNet_2.0_Support
- Microsoft Visual Studio 2005 as IDE
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top