Występuje dziwny problem polegający na tym, że moje zmienne środowiskowe nie ładują się poprawnie przy każdym uruchomieniu systemu Windows. Naprawdę trudno było dowiedzieć się, co się dzieje, i zrobiłem to wyłącznie przez szczęście. Pierwotnie zauważyłem problem przy każdym ponownym uruchomieniu lub uruchomieniu i próbie uruchomienia standardowego zestawu aplikacji. W szczególności spróbowałbym uruchomić Eclipse i nie udałoby mu się to uruchomić i zachowywać się tak, jakbym nie miał JDK.
Podczas rozwiązywania tego problemu próbuję powtórzyć moje zmienne środowiskowe (konkretnie Ścieżka) i otrzymam następujące informacje:
C: \ Windows \ System32> echo% PATH%
C: \ Windows \ system32 \ NV;.;
W tym momencie sprawdziłbym moje zmienne środowiskowe i wyglądałyby dobrze. Po chwili zauważyłem, że po przeprowadzeniu tego sprawdzenia zmienne będą się dobrze odbijać:
C: \ Windows \ System32> echo% PATH%
C: \ Program Files ... [Wiele instrukcji] ...; C: \ apache-maven-3.0.4 \ bin
Z tego, co zbieram, wchodzenie w zmienne środowiskowe zmusza je do ponownego załadowania lub odświeżenia. Nie znam sposobu ładowania zmiennych środowiskowych podczas uruchamiania, ale wygląda na to, że ten proces nie działa. To jest mój komputer roboczy i jest wiele skryptów działających w tle, które są uruchamiane podczas uruchamiania, więc podejrzewam, że to może być winowajcą.
Jeśli ktoś ma jakieś pomysły na temat tego, co się tu dzieje, byłbym wdzięczny za opinie, ale przede wszystkim zastanawiam się, czy ktoś wie, jak ręcznie wymusić odświeżenie tych zmiennych podczas uruchamiania? Mały skrypt, który mogę uruchomić przy starcie lub nawet przed kilkoma kluczowymi aplikacjami, aby upewnić się, że zmienne środowiskowe są załadowane, byłby świetny. Z góry dziękuję za wszelkie uwagi!
źródło
Odpowiedzi:
W niektórych zestawach zasobów Windows znajduje się narzędzie wiersza polecenia o nazwie setx, które umożliwia wprowadzanie trwałych zmian w zmiennych środowiskowych zamiast tymczasowych. Można go użyć w pliku wsadowym, aby ustawić
PATH
zmienną środowiskową na taką, jaka ma być.źródło
Wydaje mi się, że pamiętam ten problem kilka miesięcy temu z oprogramowaniem, które pobiera informacje o licencji ze zmiennych środowiskowych. Ustawialiśmy zmienne USERS, ale z jakiegoś powodu nie były one konsekwentne. Skończyło się tworzenie nowych zmiennych SYSTEM, (które nie zmieniają się w zależności od bieżącego użytkownika) i od tego czasu nie mieliśmy żadnych problemów.
Lub możesz utworzyć bardzo prosty plik wsadowy i umieścić go w folderze StartUp.
// zarysuj to, zmienne ustawione w oknie poleceń zachowują się tylko w tej instancji okna poleceń
VBscript na ratunek!
zapisz do pliku z rozszerzeniem ned jako * .VBS
źródło