Je sais que c'est étrange et j'ai passé près de 3 jours à rechercher la solution en ligne sans en obtenir une utile. J'ai donc décidé de venir ici.
J'ai récemment mis à niveau vers Windows 10 à partir de Windows 8.1.
Maintenant, je voulais définir une variable d'environnement pour ma nouvelle installation d'Apache Maven.
Chaque fois que j'ai créé la variable utilisateur, tout va bien. Cependant, je dois également créer la variable système où je devrai ajouter le répertoire bin à la variable que je crée déjà dans la variable utilisateur pour être "path".
Maintenant, chaque fois que je fais cela, j'obtiens une erreur qui dit "Cette variable d'environnement est trop grande. Par conséquent, je suis incapable de créer le chemin.
J'ai joint l'image de cette erreur.
J'apprécierai cela si quelqu'un peut m'aider à résoudre ce problème.
PATH
la variable d'environnement. La bonne solution existe depuis près de 2 décennies maintenant . Mais amener les développeurs à l'utiliser, c'est comme se tirer les dents.Réponses:
Lorsque la variable PATH est surchargée avec trop de valeurs, elle atteint un point où vous ne pouvez plus ajouter de valeurs. Essayer ce qui suit devrait résoudre votre problème.
Solution 1:
Si cela ne fonctionne toujours pas, essayez de copier une partie des valeurs déjà existantes de la variable PATH dans le 'NEWPATH', puis ajoutez le 'NEWPATH'
Solution 2:
Vérifiez la valeur de la variable PATH si vous pouvez grouper et raccourcir les chemins. Par exemple,
C: \ Program Files \ Microsoft SQL Server \ 102 \ Tools \ Binn \; C: \ Program Files \ Microsoft SQL Server \ 102 \ DTS \ Bin \;
peut être combiné à
C: \ Program Files \ Microsoft SQL Server;
De cette façon, vous pouvez créer plus d'espace dans votre variable PATH de longueur fixe et finalement ajuster l'emplacement de votre répertoire bin dans PATH.
J'espère que cela vous aide!
la source
setx PATH
car cela résoudra directement le%NEWPATH%
et la chaîne résultante sera encore une fois trop longue ... Donc, en utilisant cette approche, seule la boîte de dialogue et non la ligne de commande doit être utiliséepdflatex
doit être dedans,PATH
si je mets l'emplacement depdflatex
inNEWPATH
,pdflatex
il n'est plus trouvé ("la commandepdflatex
n'est pas reconnue" ...)Il existe plusieurs façons de nettoyer votre variable de chemin. Le plus simple est d'utiliser Rapid Environment Editor . Cet utilitaire gratuit va,
Je fais les étapes ci-dessus dans l'ordre et n'utilise la 3ème étape que pour les chemins les plus longs jusqu'à ce que la taille de la variable Path soit à nouveau sous contrôle.
Si vous voulez aller plus avancé, voici le petit outil C # que vous pouvez modifier selon toute autre logique que vous souhaitez implémenter.
la source
Une autre solution ou plus une solution de contournement pour contourner la limite de longueur de variable PATH de l'environnement est de gérer votre chemin (ajouter, supprimer ou mettre à jour) à l'aide d'un
PowerShell
script;Capturez la variable PATH actuelle en cliquant sur "Modifier le texte" (voir la capture d'écran ci-dessus) et copiez-la dans votre presse-papiers et enregistrez-la également dans un fichier texte en tant que sauvegarde pour éviter de mauvaises surprises. Ce n'est pas obligatoire mais vous permettra de récupérer en cas de problème.
Maintenant qu'il est sauvegardé, ajoutez ce qui suit à un nouveau fichier PowerShell (.ps1) (en modifiant la première ligne ci-dessous avec le (s) chemin (s) de dossier que vous souhaitez ajouter (la partie après le signe +)):
$ newPath = $ env: Chemin + '; C: \ Users .... \ FirstFolderToAddToPath; C: \ Utilisateurs .... \ SecondFolderToAddToPath; '
[Environnement] :: SetEnvironmentVariable ("Path", $ newPath, "Machine")
$ env: Chemin = $ nouveauPath
C'est ainsi que j'ai réussi à récupérer ma variable (longue) PATH après avoir joué avec l'interface utilisateur de Windows 10, en étant pris par la limitation de longueur et en perdant la majeure partie de mon chemin. J'espère que cela aide.
la source
setx /m
tronque à 1048 caractères: (. Vous pouvez également modifier le chemin dans l'éditeur de texte et le faire[Environment]::SetEnvironmentVariable("Path", '\my\new;path1', "Machine")
. Vous aurez besoin du shell d'administration.En plus de la réponse de Swapnil, notez que vous pouvez modifier la longueur maximale de la variable Path - qui est par ailleurs limitée à 2048 caractères (alors qu'un seul chemin a une limite historique de 206 caractères). Dans Windows 10, vous y parvenez en définissant la
LongPathsEnabled
clé de registre sur 1, qui peut être trouvée ici:Pour accéder à l'éditeur de registre:,
Windows Key+R
tapezRegedit
.Source: https://superuser.com/a/1119980
Jetez également un œil à cette réponse SuperUser: https://superuser.com/a/1119980/327009
Adressant le commentaire ci-dessous: l'erreur "La variable d'environnement est trop grande" est liée à la variable entière, pas au chemin unique en cours d'ajout.
la source
Réponse tardive mais je cherchais quelque chose de similaire et je me suis retrouvé ici. J'ai changé tous les chemins d'accès aux variables pour les fichiers de programme et les données de programme (celui-ci enregistre comme 1 caractère mais pas aussi important).
Pour quelque chose comme nodejs, j'ai changé le chemin normal de
C: \ Program Files \ nodejs \
à
% ProgramFiles% \ nodejs \
Cela peut être fait avec "C: \ Program Files (x86) \" ainsi qu'en utilisant "% ProgramFiles (x86)% \"
Cela m'a sauvé quelques personnages mais assez pour que ça cesse de me plaindre.
la source
J'ai trouvé que vous pouvez le faire via PowerShell.
J'ai donc récupéré le PATH système existant, collé dans le bloc-notes, ajouté mon nouveau truc, puis collé dans le bit "C: \ Program Files" de ce qui précède. Chemin mis à jour. Terminé.
la source
Essayez de modifier par
regedit
, dans mon cas, cela fonctionne lorsque la longueur est supérieure à 3000.Appuyez sur
Win + R
et entrezregedit
pour ouvrir regedit. Accédez àComputer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
et modifiez la valeur dePath
votre chemin. Et redémarrez l'ordinateur, cela devrait fonctionner.la source
Solution de contournement:
Veuillez redémarrer le système. Après le redémarrage du système, PATH n'est plus vide, mais peut être tronqué à 2047 (4095) caractères Si le redémarrage du système ne vous aide pas, veuillez:
Lancez c: \ windows \ system32 \ regedit.exe Accédez à la ruche du registre "HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" Nettoyez les répertoires inutiles à partir de la touche "Chemin" Redémarrez le système
Remarque: dans certains cas exceptionnels, si le système ne peut pas démarrer, veuillez:
Connectez-vous en mode sans échec Ouvrez le shell de l'invite de commande et tapez: reg add "HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v Path / t REG_EXPAND_SZ / d ^% SystemRoot ^% \ system32; ^% SystemRoot ^% /F
Pour plus de détails: https://software.intel.com/en-us/articles/limitation-to-the-length-of-the-system-path-variable
la source
4095
?En plus d'autres méthodes (par exemple Powershell), j'ai trouvé une belle interface graphique, "Rapid Environment Editor" qui peut gérer des valeurs de texte plus grandes.
https://www.rapidee.com/en/download
la source
Apparemment, Rapid Environment Editor le fera pour vous (à partir de la réponse @shatil_shah), mais vous pouvez également raccourcir les chemins vers leur version "8dot3". Vous obtiendrez beaucoup de kilomètres avec seulement ces deux remplacements:
Si vous copiez votre chemin actuel dans le Bloc-notes, commencez par rechercher et remplacer
C:\Program Files (x86)
, puisC:\Progam Files
.la source
Solution de contournement. Utilisez Modifier le texte et modifiez votre PATH dans un éditeur de texte
la source
Edit Text
, au lieu d'ouvrir un fichier.