Možnosti protokolovania Maven

1. Prehľad

V tomto rýchlom výučbe sa dozvieme, ako nakonfigurovať možnosti protokolovania v Mavene.

2. Príkazový riadok

Maven predvolene zaznamenáva iba súbory informácie, varovanie, a chyba guľatiny. Pokiaľ ide o chyby, neukazuje sa v ňom celý stacktrace tohto protokolu. Aby sme videli celý stacktrace, môžeme použiť -e alebo –Chyb možnosť:

$ mvn -e clean compile // truncated cannot find symbol symbol: variable name location: class Compiled at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213) at org.apache.maven.lifecycle. internal.MojoExecutor.execute (MojoExecutor.java:154) na org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) ...

Ako je uvedené vyššie, teraz Maven zobrazuje celú správu o chybe. Je tiež možné zobraziť protokoly na úrovni ladenia prostredníctvom servera -X alebo –Debug možnosť:

$ mvn -X čistá kompilácia // skrátený názov OS: "mac os x", verzia: "10.15.5", arch: "x86_64", rodina: "mac" [DEBUG] Vytvorená nová trieda sféry maven.api [DEBUG] Import zahraničných balíkov do triedy realm maven.api ...

Keď je ladenie zapnuté, výstup je veľmi podrobný. Aby sme tomu zabránili, môžeme požiadať Maven, aby nič nezaznamenával, okrem toho neočakával chyby -q alebo –Tiché možnosť:

$ mvn - tichá čistá kompilácia

Okrem toho môžeme protokol Maven presmerovať do súboru pomocou -l alebo –Logový súbor možnosť:

$ mvn --log-file ./mvn.log čistá kompilácia

Namiesto štandardného výstupu možno všetky protokoly nájsť v priečinku mvn.log súbor v aktuálnom adresári. Alternatívne je tiež možné použiť funkcie OS na presmerovanie výstupu Maven do súboru:

$ mvn clean compile> ./mvn.log

3. Nastavenia SLF4J

V súčasnosti Maven používa na protokolovanie API SLF4J v kombinácii s implementáciou SLF4J Simple. Preto, aby sme nakonfigurovali protokolovanie pomocou SLF4J Simple, môžeme upraviť vlastnosti v $ {maven.home} /conf/logging/simplelogger.properties spis. F

alebo inštancia, ak do tohto súboru pridáme nasledujúce riadky:

org.slf4j.simpleLogger.showDateTime = true org.slf4j.simpleLogger.dateTimeFormat = rrrr-MM-dd HH: mm: ss

potom Maven zobrazí informácie o dátume a čase vo vyššie uvedenom formáte.

Vyskúšajme inú zostavu:

$ mvn clean compile 2020-07-08 12:08:07 [INFO] Vyhľadáva sa projekt ...

Tieto vlastnosti môžeme odovzdať aj cez -D argumenty z príkazového riadku:

$ mvn compile -Dorg.slf4j.simpleLogger.showThreadName = true [main] [INFO] Hľadá sa projekt ...

Tu okrem ďalších informácií zobrazujeme aj názov vlákna.

Okrem spomenutých vlastností môžeme jednoduchý protokolovač nakonfigurovať aj na ďalšie vlastnosti:

  • org.slf4j.simpleLogger.logFile používa na prihlásenie namiesto štandardného výstupu logovací súbor
  • org.slf4j.simpleLogger.defaultLogLevel predstavuje predvolenú úroveň protokolu. Môže to byť jeden z stopa, ladiť, Info, varovať, chyba, alebo vypnuté - predvolená hodnota je Info
  • org.slf4j.simpleLogger.showLogName zobrazuje názov záznamníka SLF4j, ak je pravda
  • org.slf4j.simpleLogger.showShortLogName skráti dlhé názvy protokolovacích nástrojov, ak sú pravda

4. Záver

V tomto krátkom tutoriáli sme videli, ako nakonfigurovať rôzne možnosti protokolovania a výrečnosti v programe Maven.


$config[zx-auto] not found$config[zx-overlay] not found