web-dev-qa-db-fra.com

Message d'exception: il n'y a pas de mappage de dossier de travail pour

J'essaie de tester des versions automatisées dans tfs/vsnet 2012. J'ai défini les chemins de travail dans l'explorateur de contrôle de code source mais maintenant j'obtiens une erreur:

Exception Message: There is no working folder mapping for $/testing/buildtest. (type ItemNotMappedException)

enter image description here

23
user603007

J'ai eu le même problème. Il s'est avéré que j'avais oublié d'étendre le Items to Build section de l'onglet Process. Pour résoudre ce problème, vous devez:

  • Modifier la définition de build
  • Ouvrir l'onglet Process à gauche
  • Ouvrez le 1. Required section

    • s'ouvrir Items to Build
    • assurez-vous que le Projects to Build pointe vers le bon .sln

Edit build definition screen

34
Ruskin

Vous devez mapper la racine du projet d'équipe (dans votre cas, "testing"), ce qui n'est pas fait. enter image description here

Le chemin local doit être "c:\dev\testing\buildtest".

Comment est votre configuration BuilDefinition?

7
Khh

Dans mon cas, un clic sur le bouton Build Agent Folder (...) a révélé que $ (SourceDir) n'était pas défini, indiquant que le mappage était rompu.

enter image description here

2
Matthew

Cela peut également se produire si vous oubliez d'inclure votre dossier parent du code source dans les paramètres source dans la définition de build.

 $/Source/Code/ParentOfSolution

Les dossiers de travail créent essentiellement une liste blanche de fichiers que la génération doit consulter et utiliser, elle doit donc contenir votre code source référencé par votre sln et toutes les DLL référencées par votre code.

1
Paul Totzke

Dans mon cas, le message d'exception " Il n'y a pas de mappage de dossier de travail pour xxx. " a été lancé à Microsoft.TeamFoundation.VersionControl.Client. Client.GetLocalWorkspace (String localPath, Boolean throwIfNotFound) à partir de mon propre code:

var changesets = myRealTfsServer.QueryHistory( path, versionSpec, 0, RecursionType.Full, null,  new ChangesetVersionSpec( 1 ), versionSpec, 2, true, true, false, false );

Ma solution consiste à utiliser le chemin TFS '$ /' pour spécifier le paramètre de chemin , qui n'est en fait pas comme déclaré dans ce page dans MSDN qui indique que ce chemin doit être un chemin local.

0
Cary