Jawa Serwis Owijarki Community Edition to całkowicie wolne i otwarte oprogramowanie wiersza polecenia, które zostało zaprojektowane od podstaw, aby działać jako konfigurowalne i łatwe w użyciu narzędzie do wdrażania aplikacji Java w rodzimych demonów UNIX lub Windows tle Korekta błędu functionalityIt services.Provides jest elastyczny, niezawodny i wieloplatformowe oprogramowanie, które zapewnia funkcje korekcji błędów, który zostanie automatycznie uruchomiony ponownie nie reaguje lub awarii JVM (Java Virtual Machines). Ponadto standardowe funkcje oprogramowania, łatwą instalację skryptów aplikacji oraz funkcji rejestrowania, zarządzanie procesami dzieci, czas zdarzenia, powiadomienie e-maile, polecenia zdarzeń, względne limity pamięci, wsparcie dla wielu języków, a także zdefiniowane przez użytkownika zdarzeń i działań.
Community Edition jest rozpowszechniany na licencji open source, w tym & rsquo; s funkcjonalność jest ograniczona, jak będzie można korzystać tylko pozwalają uruchomić jako demon UNIX, aplikacji Java, aby ponownie uruchomić i monitorowania JVM, kontrolować priorytet procesu, w celu spust JVM restartuje, wysypisk nici i zamykania, do korzystania z katalogu roboczego użytkownika, aby używać znaków specjalnych, jak również do logowania i uchwycić JVM konsoli output.Getting rozpoczął Java Serwisu Owijarki wspólnotowego EditionTo zacząć z Community Edition Java Serwisu Wrapper należy pobrać pakiet, który odpowiada Twoim komputerze & rsquo; s architekturę, zapisać archiwum na swoim katalogu domowym, rozpakuj go, otwórz aplikację Terminal, przejdź do lokalizacji & lsquo; bin & rsquo; Folder (np /home/softoware/wrapper-linux-x86-64-3.5.26/bin/ cd) i uruchomić & lsquo; ./ opakowanie & rsquo; Polecenie, które wyświetli informację o użytkowaniu i dostępne options.Runs wiersza polecenia na wielu POSIX i UNIX-like operacyjnego systemsJava Serwisu Wrapper jest rozpowszechniany w trzech edycjach, Community Edition, Standard Edition i Professional Edition. Jest kompatybilny ze wszystkimi dystrybucjami GNU / Linux, ale działa na szerokiej gamie POSIX oraz uniksowych systemów operacyjnych, w tym FreeBSD, AIX, HP-UX, Microsoft Windows, Mac OS X i Solaris, wspierającego 64-bit (x86_64 ), 32-bitowy (x86), Armel, ARMHf, SPARC, s390, s390x, Itanium, PPC (PowerPC), jak i PA-RISC platform sprzętowych.
Co nowego w tym wydaniu:.
- Pomóż wiadomości dziennika, gdy wymagane jest ponowne uruchomienie JVM, gdy pokrywa jest w stanie, który zostanie zignorowany (Standard / Professional Edition)
- Dodaj dodatkową wiadomość debugowania podczas zamiatania impasu kończy. Brak zmiany funkcjonalne, ale tego dodano, aby to łatwo powiedzieć, jak długo zamiatać bierze na danej aplikacji.
- Czyszczenie wewnętrznej śledzenie gdzie ustawić zmienne środowiskowe. Brak zmian funkcjonalnych.
- Po wykryciu Cygwin z "uname -o 'w pliku skryptu, kilka systemów operacyjnych (Solaris, MacOS, itp) wyświetlany jest komunikat o błędzie, ponieważ' -o 'nie jest poprawnym parametrem. Teraz ukryć ten komunikat o błędzie, aby uniknąć nieporozumień i możemy się domyślać, że Cygwin nie jest uruchomiony.
- Dodaj możliwość kontrolowania uruchomiona usługa z Systemd pomocą pliku skryptu.
- W systemie Mac OS X, naprawić literówkę, dodać inny alternatywny sposób na znalezienie Java, aby ustawić zmienną środowiskową JAVA_HOME, i korzystać z pełnej ścieżki do wykonania sysctl w przypadku gdy nie jest w ścieżce. Dzięki za wskazanie Dannes Wessels to.
- Rozwiąż problem w nowszych wersjach systemu Windows podczas dostosowywania Wrapper. Certyfikat nie został usunięty podczas tworzenia cel. To prowadziło do błędu podczas próby podpisania cel z nowym certyfikatem.
- Dodaj brakuje wsparcia w skrypcie powłoki do ponownego uruchamiania / zatrzymywania usługi Wrapper z launchctl na Mac OS X.
- Dodaj brakuje wsparcia w skrypcie powłoki do ponownego uruchamiania / zatrzymywania usługi Wrapper z Upstart.
- Dodaj możliwość ustawienia ścieżki polecenia 'su', jak również możliwość określenia dodatkowych argumentów w skrypcie Owijarki powłoki przy użyciu nowych SU_BIN i SU_OPTS zmiennych.
- Rozwiąż problem w klasach pomocniczych WrapperSimpleApp, WrapperStartStopApp i WrapperJarApp gdzie problemy wiersza poleceń, które doprowadziły JVM wyjściu na starcie wyglądały jak nieoczekiwanych wyjść. Oznaczało to, że Owijarki by ponownie spróbować ożywić JVM, nie dając się przy pierwszej próbie.
- Zmodyfikowane klasy pomocnika WrapperSimpleApp, WrapperStartStopApp i WrapperJarApp tak, że ich użytkowanie banery zostanie pokazany tylko dla problemów związanych z wiersza poleceń. Problemy z określonych klas, metod, lub pliki jar są nadal zalogowany jako błędy, ale pokazuje użytkownikowi wykorzystanie w tych przypadkach było mylące.
- Popraw metody WrapperResources.getString (), która nie ma argumentów zastępczych tak, że jej przetwarzanie surowego ciąg jest obsługiwane tak samo jak metody, które mają argumentów zastępczych. Teraz wszystkie ciągi są przetwarzane przez klasę MessageFormat przed zwrotem. Poprzednie wersje nie były zgodne co do potrzeby ucieczki apostrofów.
- Dodano opcjonalną walidację kluczową, aby upewnić się, że struny przekazywane do metody WrapperResources.getString () są prawidłowo sformatowana. Zobacz klasę WrapperResources informacji, jak włączyć.
- Dodaj nowe opcje dla rzeczowych wrapper.backend.type: AUTO, GNIAZDO, SOCKET_IPv4, SOCKET_IPv6, rury. Po ustawieniu na AUTO, Owijarki spróbuje otworzyć gniazdo i IPv4 na IPv6 awaryjnej i rury w przypadku błędu.
- Naprawiono błąd podczas konwersji z wielobajtowych do szerokiej char bez ustawienia locale przy starcie (tylko Unix). Dzięki Bert.
- Dodaj "CLOSE_BACKEND 'alias' CLOSE_SOCKET 'jako polecenia test dla właściwości wrapper.commandfile. To dlatego, że nie było wiele opcji do podłączenia zaplecza przez jakiś czas, a nazwa jest bardziej mobilny.
- Rozwiąż problem na komputerze Mac z systemem OS X, gdy Yosemite, gdzie scenariusz nie potrafi poprawnie porównać wersje '10 .10 'do '10 .5.0 ". To prowadziło do skryptu myśli, że może być prowadzony tylko 32-bitowe pliki binarne. To był tylko problem, jeśli nazewnictwa trójkąt paczka plików binarnych otoki był używany.
- Dodaj nową właściwość wrapper.java.classpath.missing.loglevel który pozwala kontrolować sposób Owijarki loguje ostrzeżenia o brakujących elementów ścieżce klasy. Wcześniej zawsze zalogowany jako wyjście debugowania i nie może być wyłączona.
- Jeśli są jakieś problemy niski poziom rozpoczynających proces Java, które nie są związane z konfiguracją lub samego JVM, Owijarki nie będzie już spróbować ponownie jako takie prób były bez znaczenia.
- systemu Windows API masz wątpliwości, które powodują awarię, jeśli proces próbuje ustawić zmienną środowiskową ponad 32767 znaków. Owijarki sprawdza teraz to i rejestruje błąd, a nie ustawienie zmiennej. To był problem, czy bardzo duże ścieżek dla klas zostały wykorzystane, gdy nieruchomość wrapper.java.classpath.use_environment była prawda.
- System Windows nie pozwala wiersza polecenia, aby być dłuższe niż 32766 znaków. Różne wersje Windows poradzić inaczej, gdy takie polecenie jest długa. Owijarki teraz ma własną kontrolę i pokazuje błąd w spójny sposób.
- Poprawa komunikat o błędzie na platformach UNIX, kiedy linia poleceń jest dłuższy niż maksymalnej. Ta maksymalna różni się znacznie od platformy i środowiska jest trudna do obliczenia niezawodnie więc długość nie jest obecnie przedstawione w komunikacie.
- Usuwanie problemu na platformach UNIX, gdzie bardzo duży plik konfiguracyjny może spowodować awarię WrapperManager do uruchamiania. Było to spowodowane częściowym przeniesieniem pliku konfiguracyjnego do WrapperManager przez połączenie zaplecza. To się stanie, niezależnie od rodzaju użytego backend. Rozmiar pliku konfiguracyjnego, który mógłby spowodować problemy różnicować znacznie na podstawie specyficznego systemu.
- Usuwanie problemu na platformach Windows, gdzie bardzo duży plik konfiguracyjny będzie nie być wysyłany do WrapperManager na starcie, gdy nieruchomość wrapper.backend.type był ustawiony na rurze. Jedynym problemem było to, że WrapperManager.getProperties () metoda byłaby pusta. (Professional Edition),
- Dodaj kontrole do WrapperManager.exec () metody w systemie Windows dla maksymalnej długości wiersza poleceń 32766 i nazwa zmiennej środowiskowej maksymalna wartość długości para 32767. (Professional Edition),
- Rozwiąż problem, gdzie bezpłatnie wskaźnikiem NULL była wykonywana jako część procesu oczyszczania z WrapperManager.exec () rozmowy. To nie jest znany spowodowały żadnych problemów.
- Dodane getStdOut (), getStdErr (), a getStdIn () metody do klasy WrapperProcess jak aliasów do getInputStream (), getErrorStream (), i getOutputStream () metody, aby uniknąć nieporozumień.
- Rozwiąż problem w systemie Windows 7, gdzie długie kolejki dziennika dostałem uszkodzony po 31.397 znaków, gdy wrapper.console.direct była prawda. To wydaje się być problem z Windows API i leżącej był tylko problem z wyświetlaniem. Zmniejszono maksymalną liczbę znaków, które mogą być zapisywane za pomocą jednego wywołania API do 30000, aby obejść problem. Zmiana ta ma charakter wewnętrzny, a wciąż nie ma limitu długości zalogowanych linii.
- Fix impas, jeśli wrapper nie pisać do zaplecza, gdy nieruchomość wrapper.backend.type był PIPE. Znaleziony przez przeglądu kodu i nie jest wiadomo, że faktycznie się stało.
- Mac OSX 10.5.0, skrypt będzie użyć klawisza "KeepAlive" w pliku konfiguracyjnym launchctl. Wcześniejsze wersje Mac OS X będzie nadal używać tego samego klucza "OnDemand". Dzięki Robin za wskazanie tego. (Standard / Professional Edition),
- Nie zezwalaj na korzystanie z hostids przywiązane do urządzeń firmy Apple Bluetooth, gdy działa na wirtualnym systemie systemu Windows zainstalowana na systemie OS X.
- Rozwiąż problem, gdzie WrapperManager.log () nie działa prawidłowo, gdy wiadomości multi-byte był zalogowany.
- W debugowania pełny pakiet właściwości konfiguracyjnych jest tłumione od wyjściowych dziennika, ponieważ jest ogromny i może zawierać poufne dane. Dodaj rozmiar do skróconej wyjścia, aby pomóc z debugowania.
- Fix przeciek pamięci na platformach UNIX, gdy komunikat został zgłoszony. To był tylko problem, jeśli wiadomość została wielokrotnie zalogowany.
- Popraw kilka innych potencjalnych wycieków pamięci znaleźć poprzez przeglądu kodu. Nie znane są przyczyną żadnych rzeczywistych problemów.
Co nowego w wersji 05.3.23:
- Standardowy / Professional Edition:
- Po nieznany typ licencji jest spotykane, to nieznany typ w komunikacie błędu, aby pomóc debugowania.
- Rozwiąż problem uszkodzenia pamięci na z / OS, gdy język został ustawiony na podwójnym lokalizacji bajtów, jak japoński.
- Przejdź przez nie i dokonać Wrapper znacznie trwalsze, gdy źle zakodowane podwójnych znaków bajtowych są spotykane.
- Preofessional Wydanie:
- Zmień wyjątek zostanie wygenerowany, gdy WrapperManager.exec () jest wywoływana podczas Wrapper to wyłączenie więc to mówi teraz, że zamiast mówić, że natywna biblioteka nie jest ładowany.
- Owijarki jest teraz bardziej uważać, aby upewnić się, że nigdy nie jest zamknięty backendu podczas procesu dziecko jest uruchomiony, aby zapewnić, że Owijarki wie o wszystkich procesów potomnych uruchomione.
- Dodaj komunikat ostrzegawczy w przypadku zgłoszonego wrapper nie uruchomionego procesu z powodu dziecięcej zaplecza Połączenie zamknięcia.
- Fix potencjalny NPE, które mogą być rzucone podczas czytania stdout lub stderr z procesu dziecka podczas Owijarki został zamykania i po wyjściu Proces dziecko.
- Rozwiąż problem na platformach UNIX, gdzie byliśmy utknięcie próby czyszczenia po procesie, który obecnie blokowania na przeczytanych z stdout lub stderr.
- Rozwiąż problem na platformach UNIX, gdzie czas oczekiwania próba uzyskania wewnętrznej blokady listy procesów dziecko powodując wewnętrzny licznik, aby uzyskać zsynchronizowane, co prowadzi do innych procesów zakończone dzieci pozostają w nieistniejącej zombie aż do procesu Java zakończony.
- Usuwanie problemu na platformach UNIX, gdzie opisy plików rury wykorzystywane do komunikacji z procesów potomnych były niewłaściwie przekazanych do wszystkich procesów potomnych. Oni nie rośnie w czasie.
- Rozwiąż problem na systemach FreeBSD, gdzie wrapper.lang.encoding nie rozwiązało na UTF-8 poprawnie, gdy zmienna LANG nie został ustalony.
- Fix potencjalny problem synchronizacji wzywającą WrapperProcess.waitFor () lub WrapperProcess.exitValue ().
- Dodaj dodatkowe wyjście dziennika debugowania pokazując różne wartości limitu czasu, aby pomóc w problemach użytkowników debugowania.
- Rozwiąż problem, gdzie skrypt nie został prawidłowo wykrywania wersję systemu operacyjnego Mac OS X Maverick z.
- Dodaj ostrzeżenia o niezdefiniowanych zmiennych środowiskowych w to referencje plików w pliku konfiguracyjnym.
- Dodaj wsparcie dla zmiennej środowiskowej ekspansji w plikach określonych z wrapper.java.additional_file i wrapper.app.parameter_file właściwości.
- Skorygować całkowitą formatowania w sposobie WrapperUNIXGroup.toString () tak, że są zgodne z resztą owijki.
- Rozwiąż problem, gdzie wymóg biblioteki iconv nie mogą być zaspokojone w FreeBSD 10. Teraz zlokalizować dynamicznie biblioteki szukając /usr/local/lib/libiconv.so, /usr/local/lib/libbiconv.so lub /lib/libkiconv.so.4 w tej kolejności.
- Fix metodę WrapperPrintStream.println () tak, ciągi zawierające karetki poprawnie nie każda linia poprzedzany ze skonfigurowanym cel.
Co nowego w wersji 5.3.14:
- Rozwiąż problem w AppCommand.bat.in Plik, gdzie nawias w nazwie pliku binarnego Owijarki spowodowała & quot; PATH było nieoczekiwane w tej chwili & quot; błędu.
- (Standard / Professional Edition),
- Rozwiąż problem przy korzystaniu zlokalizowaną wersję owijki na platformach Windows 64-bitowych, gdzie Owijarki pozostawałaby użyć domyślnego języka systemu nawet wrapper.lang został użyty do określenia innego języka. Wprowadzony w 3.05.12.
- Rozwiąż problem w pliku wsadowym na podstawie polecenia systemu Windows AppCommand.bat.in gdzie polecenie "Stan" została błędnie są zgłaszane jako "zapytania" w wyjściu użytkowania. Komenda "Stan" zawsze działał poprawnie, jeśli używana.
- Rozwiąż problem na platformach UNIX, gdzie niektóre asynchroniczne wiadomości były przyczyną wiadomość & quot ostrzegawczy; Kodowanie błąd ... & quot; być zalogowany miejscu planowanego wiadomości. To było widać, gdy skonfigurowany plik dziennika nie ma uprawnień do zapisu. Inne niż nieprawidłowego wiadomości dziennika, Owijarki pracował poprawnie. Wprowadzony w 3.5.2.
- Usuwanie problemu w skrypcie UNIX, gdzie działa z dorobkiewicz nie działa prawidłowo, gdy RUN_AS_USER był ustawiony.
- Relax kontroli bezpieczeństwa podczas uruchamiania komendy "Stan" przed skrypt powłoki UNIX, tak teraz pozwala na uruchomienie skryptu do przeprowadzenia wyboru Tylko do odczytu pliku pid każdego użytkownika.
- Rozwiąż problem ze skryptem UNIX, gdzie "usunięcia" Polecenie starał się zatrzymać działającą aplikację, nawet jeśli nie została zainstalowana aplikacja.
- Fix przepełnienie bufora, które może potencjalnie spowodować awarię podczas instalowania usługi Windows, gdy wrapper.ntservice.account został określony. Zostało to wprowadzone w 5.3.12.
- naprawić uszkodzenie sterty, które mogą wystąpić podczas uruchamiania i potencjalnie spowodować awarię. Tylko systemy Windows, które wykorzystują system dzienników zdarzeń, zostały naruszone. Odkryta z przeglądu kodu, nigdy nie było żadnych doniesień o tym, powodując problemy dla użytkowników. Może się to zdarzyć, jeśli skonfigurowany wrapper.log nie mogą być zapisane jako wrapper zawsze stara się napisać do dziennika zdarzeń w takich przypadkach. Wprowadzony w 3.05.12.
- Dodaj nowy porównanie wersji pomiędzy skryptem powłoki UNIX i Wrapper rozpocząć pokazując ostrzeżenie w przypadku niezgodność wersji. Kontrola będzie działać tylko wtedy, gdy skrypt i Owijarki są każdego z co najmniej wersji 5.03.14.
- Dodano nową właściwość wrapper.pidfile.strict która powie owijki nie rozpocznie się, jeśli plik pid już istniały. Domyślną wartością jest false dla wstecznej kompatybilności.
- z boku Java gniazda zaplecza bardziej odporne w przypadku odczytu lub zapisu timeout. Gniazdo zaplecza nie ma limitu czasu ustawiony domyślnie, więc nie powinno być problemem. A użytkownicy kilka zgłaszane problemy dotyczące konkretnych systemów jednak, które doprowadziły do tej poprawki.
- Aby pomóc w testowaniu timeout gniazda zaplecza, nowy obiekt System wrapper.backend.so_timeout Dodano pozwalają skonfigurować gniazdo zaplecza do wykorzystania limit czasu. Zobacz Javadocs z WrapperManager.exec () klasy o szczegóły.
Co nowego w wersji 5.3.11:
- Fix potencjalną awarię w systemie Windows spowodowanych przez bufor przepełnienie. To był problem, ponieważ w wersji 3.5.0 i wpływa na konfiguracje, które wyznaczają więcej niż jeden wrapper.ntservice.dependency .. W zależności od tego, co było w pamięci, to nie zawsze prowadzi do katastrofy. Posiada bardzo powtarzalne zachowanie dla danego pliku konfiguracyjnego.
- Rozwiąż problem w systemie Windows, gdzie Owijarki brał 15 sekund lub dłużej do uruchamiania na niektórych systemach, ponieważ wywołanie systemowe WinVerifyTrust został problemy aktualizowanie listy CRL. To był problem, ponieważ pliki binarne Owijarki zaczęła być podpisany w wersji 3.5.7. Jeśli połączenie WinVerifyTrust trwa dłużej niż skonfigurowanego wrapper.startup_thread.timeout następnie Owijarki będzie nadal uruchomieniem bez dalszej zwłoki.
- (Standard / Professional Edition),
- Jawnie usunąć certyfikat z niestandardowym formacie binarnym trakcie dostosowywania. Wystąpiły problemy z binarny ucieczkę innego certyfikatu inaczej.
- Jeśli Owijarki jest w stanie pisać do skonfigurowanego wrapper.logfile z jakiegokolwiek powodu zawsze powróci do domyślnego pliku dziennika, a następnie zalogować się komunikat o awarii. Jeżeli domyślne również nie wtedy jest zapisywany tylko komunikaty będą rejestrowane tylko do konsoli w większości przypadków. Modyfikacja Owijarki więc teraz zawsze wysyłać wiadomości do zarówno syslog lub EVENTLOG niezależnie od wrapper.syslog.loglevel jest ustawiony na. Jest to ważne, aby pomóc wyśledzić przyczynę problemów z dostępem do pliku dziennika.
- Począwszy od wersji 3.5.0, to wewnętrznie można wydrukować wiadomości dziennika multi-line, tak aby wszystkie linie będą zawsze zgrupowane w pliku dziennika. Wersja ta modyfikuje kod logowania lekko tak, że wyjście dziennika takie multi-line jest teraz zalogowany jako pojedynczej wiadomości w sylog UNIX lub Windows EVENTLOG.
- Rozwiąż problem, gdzie bardzo długie kolejki wyjście z JVM spowodowałby Owijarki do stawienia się do powieszenia na chwilę. Po raz pierwszy jeden wiersz wyjścia zawierający kilkaset tysięcy znaków był zalogowany, wewnętrzny bufor był stopniowo wzrosła o 100 znaków na jeden cykl. Wrapper się zwiększa wielkość bazują na znanej wielkości, aby znacznie zmniejszyć liczbę cykli potrzebnych do wyboru nowego rozmiaru bufora.
- Zmień polecenie PAUSE_THREAD więc teraz można czekać w nieskończoność. Przydatne tylko do testowania Wrapper.
- Dodaj nowe polecenie PAUSE_LOGGER aby można wstrzymać kolejny wpis w dzienniku. Przydatne tylko do testowania Wrapper.
- W systemie UNIX, rury stdout / stderr pomiędzy JVM i Wrapper nie było czyszczone prawidłowo. Otrzymano w ten sposób małą nieszczelność, ale był nieszkodliwy. Rury są już oczyszczone i inicjowany dla każdej instancji JVM.
- Rozwiąż problem, gdzie Wrapper może nie zrestartować maszynę JVM, gdy wniosek restart pochodzi JVM, jeśli system został przeżywa bardzo ciężki IO powodując długie dyskowych kolejek IO. To było przyczyną główną pętlę owijki do zablokowania zapisu i miss żądania restartu, powodując Wrapper do wyłączenia, a nie ponownego uruchomienia. Może to mieć wpływ na wszystkie platformy. W systemie Windows, może to również być powielana dokonywania wyboru w konsoli, aby zatrzymać produkcję, a następnie składając wniosek od wewnątrz JVM, aby ponownie uruchomić.
- Dodaj nową klasę pomocniczą WrapperPropertyUtil aby to łatwiejszy dostęp do wartości nieruchomości Owijarki od wewnątrz JVM.
- Fix bug na niektórych platformach, gdzie wyjście dziennika java może się uszkodzony z powodu niewłaściwego wykorzystania funkcji systemu strncpy. Funkcja ta ostrzega, że niektóre implementacje nie obsługują nakładających kopii pamięci. Problem może być powielana tylko na jednym komputerze testowym Linux w liniach po pustym wierszu wyjścia. Ten problem istnieje od 3.4.0.
Co nowego w wersji 3.5.9:
- Rozwiąż problem w systemie Windows, gdzie karty sieciowe, których nazwy zawarte & quot; PRO / 1000 & quot; zostaje usunięty z listy hostids wyświetlane, gdy & quot; wrapper.exe -h & quot; został uruchomiony. To nie ma wpływu na istniejące pliki licencji serwera kluczowych generowanych przez hostIds zgłaszanych przez 3.5.7 lub starszej, lub kluczy licencyjnych rozwoju. Ale to nie powoduje, że wrapper zgłosić ważne hostIds nie można znaleźć, kiedy rozpoczęto otoki bez pliku licencji. Było to spowodowane jakimś kodzie testowym dodanej w 3.5.8, że nie udało się usunąć.
- Rozwiąż problem, gdzie nie został prawidłowo Wrapper plonowanie kontrolę z powrotem do głównej pętli, kiedy bardzo duże ilości ciągłej produkcji był zalogowany z JVM. Wprowadzony w wersji 3.4.0. W wersjach przed 3.5.8, może to spowodować JVM Timeout i uruchomi się ponownie. Ten szczególny problem został rozwiązany, ale proces Owijarki w 3.5.8 nadal było odpowiadać, gdy to się dzieje. Owijarki będzie teraz zawsze yeild powrotem do głównej pętli po 250 milisekundach ciągłego logowania.
- Rozwiąż problem, gdzie WrapperManager może blokować próby wyjścia zapisu debugowania w przypadku jej użytkownik pisał bardzo duże ilości mocy do konsoli, jak również. W skrajnych przypadkach doprowadziło to do Wrapper myśląc, że JVM został zamrożony. To była tylko kwestia jeśli wyjście debugowania została włączona.
- Restrukturyzacji skrypt, więc wszystkie wersje teraz ponownie użyć tego samego skryptu.
Co nowego w wersji 3.5.8:
- (Standard / Professional Edition),
- Począwszy od wersji 3.5.5, możemy unieważnione używania wszelkich 00FF * hostids w systemie Windows, aby uniknąć problemów z zmiany hostids gdy użytkownicy posiadają kartę sieciową Juniper Network Connect w systemie. Okazało się to być zbyt restrykcyjne, jak gości systemów operacyjnych działających pod Parallels również skorzystać z tego zakresu HOSTID. Owijarki jest teraz bardziej uważać jedynie unieważnić rzeczywistych hostids Juniper Network Connect.
- (Standard / Professional Edition),
- Pomóż komunikat wyświetlany użytkownikowi, gdy pokrywa jest w stanie zlokalizować żadnych hostids dla systemu.
- Naprawiono błąd skryptu otoki w systemie Solaris, gdzie -F opcja nie była dostępna dla grep.
- Dodane systemu Windows informacje o wersji na wyjściu wrapper debugowania.
- Dodane nieruchomości wrapper.log.warning.threshold co sprawia Owijarki wyświetli ostrzeżenie, gdy wykryje, że Owijarki zajęło dużo czasu, aby nagrać wiadomość dziennika. Został dodany do testowania zgłoszony problem spowodowany przez powolne IO w systemach bardzo mocno obciążonych.
- Rozwiąż problem, gdzie filtr, który zwrócił się do JVM, aby uruchomić ponownie zostanie zignorowany, jeśli JVM odszedł na własną rękę natychmiast. Owijarki jest teraz bardziej spójne, tak aby wnioski o restart z poziomu JVM lub filtrów będzie zawsze wyższy priorytet niż takich wniosków wyjazdowych. Wnioski zamykania zewnętrzne, lub z innych działań, nadal będzie się zachowywał tak jak w przeszłości i nadal wyłączenia Wrapper. Owijarki rejestruje również komunikaty w debugowania, czy znakomity wniosek restart jest zachowana lub ignorowane.
- Naprawiono błąd w pliku wsadowym AppCommand.bat która może wystąpić w niektórych platformach Windows z niektórych kodowania w systemie multi-bajtowych. Skrypt został przepisany i części wątpliwe zostały uproszczone. Funkcjonalność skrypt został zachowany.
- Dodano zmienną WRAPPER_CONF_DIR środowiska, które mogą być używane do właściwości konfiguracji. (Funkcja Zapytanie 3160644)
- Wykonane wyjście skryptu z odpowiednim kodem wyjścia otrzymanych w trakcie działania skryptu jako inny użytkownik, określone w RUN_AS_USER. (Raport o błędzie 3185281)
- Fix naruszenie zasad dostępu, które mogą się zdarzyć, gdy certyfikat podpisywanie kodu ma nie zostały zweryfikowane.
- Zaloguj błąd, jeśli gniazdo backend gwałtownie zamknięte od zewnątrz. To był coraz zalogowany na poziomie dziennika debugowania. Wiadomość jest & quot; istniejące połączenie zostało gwałtownie zamknięte przez zdalnego hosta. (0x2746) & quot ;. Ponieważ wiadomość została tylko zalogowani jeśli wyjście debugowania została włączona, zostanie ponownie uruchomiony JVM bez jasnego wyjaśnienia, co się stało. Źródło zamknięcia gniazda jest w trakcie badania.
- (Professional Edition),
- Dodano połączenia fireUserEvent Java API WrapperManager. Pozwala to na ogień maile zdarzeń użytkownika, działania bez spustu filtra. Proszę również znaleźć więcej informacji na temat modelu zabezpieczeń dla tego połączenia na stronie bezpieczeństwa.
- Fix ostrzeżenie na wersjach Mac, jeśli polecenie skonfigurowany java nie był Universal Binary. Kontrola została dodana w 3.4.0, aby upewnić się, że wrapper.java.command zwrócił się bezpośrednio do pliku wykonywalnego, aby uniknąć nieoczekiwanego zachowania podczas wykonywania skryptu. Wiadomość jest tylko ostrzeżeniem i Owijarki nadal niezależnie. Standardowy ppc ppc_64, x86_64, i386, jak również uniwersalne pliki binarne będą teraz wszystko działa poprawnie bez ostrzeżenia.
- wartość domyślna owijki. *. Stosuje bieżący umask proces. Przed domyślnie zawsze 0022.
- Dodaj nową właściwość wrapper.backend.type, który jest używany do kontroli, czy Owijarki komunikuje się z JVM używając tradycyjnych & quot; GNIAZDO & quot; lub nową eksperymentalną & quot; & quot ;. RUR Ten został dodany jako obejście do rzadkiej problemu, gdzie niektóre maszyny Windows są zamknięcia gniazdo na poziomie systemu operacyjnego. To był tylko kiedykolwiek widziałem w systemie Windows 2003, ale może występować w innych wersjach systemu Windows, jak również.
- Dodaj nową eksperymentalną nieruchomości wrapper.use_javaio_thread który powoduje Wrapper obsłużyć wszystkie wyjścia konsoli java w dedykowanym wątku.
- Dodaj nowy WrapperManager.isNativeLibraryOk () metodę, która pozwala użytkownikowi na łatwe sprawdzenie kodu czy natywne biblioteki został załadowany i zainicjowany na starcie.
- Dodaj nowe polecenie PAUSE_THREAD do nieruchomości wrapper.commandfile co pozwala sprawdzić, jak zachowuje się, gdy wrapper blokować różne wątki zamrażać. To był używany do symulacji i rozmnażać spraw w dużym stopniu IO związanych serwerów.
- Pomóż drogę boku Java owijki zachowuje się, gdy wrapper nie ping JVM na dłuższy okres czasu. JVM można wyjść, aby dać się zsynchronizuje się z JVM. To było przyczyną problemów na systemach, które były silnie związane, ponieważ IO Owijarki mogą zablokować na jakiś czas podczas próby zapisu do pliku dziennika i JVM została wyjściu. JVM będzie teraz nigdy nie wyjść w takich okolicznościach. JVM nigdy nie będzie sierotą, bo będzie jeszcze zamknąć niemal natychmiast, jeśli gniazdo zaplecza lub rury z Wrapper jest zawsze zamknięta.
- potępiać metody WrapperManager.appearOrphan (), który jest wykorzystywany do symulacji tryb uszkodzenia, które nie jest możliwe z Wrapper.
- Zmieniono sposób obsługi błędów jest wrapper certyfikatów w odniesieniu do certyfikatu podpisywanie kodu / znacznika czasu. Owijarki będzie już tylko sama wyłączy się, jeśli podpis binarny został pomyślnie zweryfikowane, ponieważ nie podpis binarny lub został niepoprawny, ale nie w przypadku jakichkolwiek problemów z przeciw-podpisującego zostało znalezione. Począwszy od 3.5.7, pliki binarne systemu Windows Owijarki są podpisane. Niektórzy użytkownicy z zablokowanych dół systemów Windows 2008 miał problemy z Owijarki odmawia się, ponieważ certyfikat Comodo została wyłączona w systemie.
- Dodaj nowy wrapper.java.detach_started właściwość, która umożliwia korzystanie z Wrapper jako proste narzędzie do uruchamiania aplikacji Java. Po włączeniu, Owijarki kończy się natychmiast i JVM ma działać na własną rękę.
- Po uruchomieniu zawijania, w określonym koncie użytkownika, za pomocą właściwości wrapper.ntservice.account, Owijarki doda zgodę na konto do logowania jako usługa automatycznie po instalacji. (Funkcja Zapytanie # 3286491)
Właściwości umask
Co nowego w wersji 3.5.6:
- Rozwiąż problem na platformach UNIX, gdzie plik dziennika Ścieżka była obliczona nieprawidłowo, jeżeli bezwzględna ścieżka została określona dla wrapper.logfile, a plik nie istnieje. Komunikat był wyświetlany, ale w dalszym ciągu za pomocą wrapper plik domyślny dziennika. Wystąpił problem z komunikatem, który spowodował wypadek na niektórych platformach to Mac OSX. Wprowadzony w wersji 3.5.5.
- Rozwiąż problem na platformach Windows, gdzie Owijarki byłoby katastrofy, gdyby nie mógł uzyskać dostęp do katalogu skonfigurowanego wrapper.logfile. Wprowadzony w wersji 3.5.5. Bug # 3087424.
- Pomóż drogę ostrzeżenia są rejestrowane, gdy są problemy z zapisem do skonfigurowanego wrapper.logfile tak, że wiadomość zostanie teraz zapisywane w pliku dziennika, który kończy się za pomocą wrapper w przypadku, gdy jest skuteczne w sięgnięcie do domyślnej dzienniku plików.
- Usuwanie problemu na platformach Windows, gdzie wrapper.java.additional. właściwości, które zostały określone w wierszu polecenia, a zawarte przestrzenie, nie były requoted poprawnie podczas budowania wiersza polecenia Java. Wprowadzony w wersji 3.3.6.
- Rozwiąż problem, gdzie komunikat ostrzegawczy zalogowany nieprawidłowych wartości wrapper.java.additional. nieruchomości, zawarte uszkodzony tekst. Wprowadzony w wersji 3.3.6.
- Usuwanie problemu na platformach UNIX, gdzie nieprawidłową wartość dla wrapper.java.additional. Obiekt został prawidłowo raportowane i pomijane, ale wynikające z linii poleceń, aby uruchomić JVM miał pustą wartość, która była przyczyną JVM nie uruchomić. Nieprawidłowa wartość jest dowolna wartość, która nie zaczyna z & quot; - & quot; charakter.
- Dodaj nową zmienną środowiskową WRAPPER_INIT_DIR które mogą być używane w celu odniesienia do katalogu roboczego, z którego została uruchomiona otoki. Jest to konieczne w przypadku niektórych zastosowań, ponieważ zawsze zmienia wrapper katalog roboczy do lokalizacji pliku binarnego Wrapper.
- Zmodyfikuj skrypt powłoki UNIX, więc nie zmienia bieżący reż pracy do lokalizacji skryptu. To nie jest już potrzebna, ponieważ osłona została zmieniając katalog roboczy na własnym miejscu od wersji 3.2.0.
- Dodaj nową właściwość wrapper.request_thread_dump_on_failed_jvm_exit.delay do kontroli, jak długo będzie czekał po wrapper robi zrzut wątku przed zabicie procesu Java. Opóźnienie to zawsze ustalony na 5 sekund.
- Czyszczenie tekst kilku komunikatów ostrzegawczych o nieprawidłowych wartości konfiguracyjnych, aby były bardziej spójne.
- (Professional Edition),
- Dodaj nową właściwość wrapper.jvm_kill.delay który pozwala kontrolować ilość czasu, aby umożliwić między wydarzeniem jvm_kill wyrzuceniu i JVM faktycznie zabił.
Wymagania :
- Oracle Java Standard Edition Runtime Environment,
Komentarze nie znaleziono