Échec inattendu de la tâche "GenerateJavaStubs" - Solution

Mais qu'elle est cette erreur, comment trouver la solution. Ce matin je repars sur cette erreur "Le chemin d'accès spécifié, le nom de fichier ou les deux sont trop longs. Le nom de fichier qualifié complet doit comprendre moins de 260 caractères et le nom du répertoire moins de 248 caractères." Erreur que j'ai détaillé dans le post précédent.

Gravité Code Description Projet Fichier Ligne État de la suppressionErreur  Échec inattendu de la tâche "GenerateJavaStubs".
System.IO.PathTooLongException: Le chemin d'accès spécifié, le nom de fichier ou les deux sont trop longs. Le nom de fichier qualifié complet doit comprendre moins de 260 caractères et le nom du répertoire moins de 248 caractères.
   à System.IO.LongPathHelper.Normalize(String path, UInt32 maxPathLength, Boolean checkInvalidCharacters, Boolean expandShortPaths)
   à System.IO.Path.NewNormalizePath(String path, Int32 maxPathLength, Boolean expandShortPaths)
   à System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   à System.IO.Path.GetFullPathInternal(String path)
   à System.IO.Path.GetFullPath(String path)
   à Xamarin.Android.Tasks.GenerateJavaStubs.Run(DirectoryAssemblyResolver res)
   à Xamarin.Android.Tasks.GenerateJavaStubs.Execute()
   à Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   à Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() Todo.Android

On se croirait revenu aux temps du DOS de Windows qui n'était pas capable de gérer des chemins de fichier de plus de 256 caractères. Mais d'ailleurs, le peut-il aujourd'hui ? ;-) LoL.

Mais cette fois j'ai l'idée, je lis plus attentivement le message d'erreur. Comme quoi "il faut lire" comme dirait Dany Boon et la nuit porte conseil. Je rapatrie mon projet à la racine du disque dur et devinez quoi ? Ca fonctionne !

Solution

Le chemin (path) de votre projet est trop long ... Créez un répertoire plus proche de la racine du disque dur.

Et voilà :

Exécution du Sample Todo de Xamarin sur mon emulateur Android Nougat 7.5
Incroyable non ? Oui mais avant de la trouver celle-la j'ai bien galéré alors c'est cadeau, n'hésitez pas à laisser votre commentaire ou à cliquer sur le côté dans vous savez quoi ... ;-)

Have fun!

Aucun commentaire:

Publier un commentaire

Pour plus d'interactivité, n'hésitez pas à laisser votre commentaire.