SLF4J - migrator
Jeśli masz projekt w Jakarta Commons Logging (JCL) lub, log4j lub, java.util.logging (JUL) i chcesz przekonwertować te projekty na SLF4J, możesz to zrobić za pomocą narzędzia migracji dostępnego w dystrybucji SLF4J.
Uruchamianie SLF4J Migratora
SLF4J to prosty pojedynczy plik jar (slf4j-migrator.jar), który można uruchomić za pomocą polecenia java –jar.
Aby go uruchomić, w wierszu polecenia przejrzyj katalog, w którym masz ten plik jar i wykonaj następujące polecenie.
java -jar slf4j-migrator-1.8.0-beta2.jar
Starting SLF4J Migrator
Spowoduje to uruchomienie migratora i możesz zobaczyć samodzielną aplikację java jako -
Jak określono w oknie, musisz zaznaczyć typ migracji, którą chcesz wykonać, wybrać katalog projektu i kliknąć przycisk Migrate Project to SLF4J.
To narzędzie przechodzi do udostępnianych plików źródłowych i wykonuje proste modyfikacje, takie jak zmiana wierszy importu i deklaracji rejestratora z bieżącej struktury rejestrowania na SLF4j.
Przykład
Załóżmy na przykład, że mamy próbkę log4j(2) projekt w eclipse z jednym plikiem w następujący sposób -
import org.apache.log4j.Logger;
import java.io.*;
import java.sql.SQLException;
import java.util.*;
public class Sample {
/* Get actual class name to be printed on */
static Logger log = Logger.getLogger(Sample.class.getName());
public static void main(String[] args)throws IOException,SQLException {
log.debug("Hello this is a debug message");
log.info("Hello this is an info message");
}
}
Aby przeprowadzić migrację próbki log4j(2) projekt do slf4j, musimy sprawdzić przycisk radiowy from log4j to slf4j i wybierz katalog projektu i kliknij Exit migrować.
Migrator zmienił powyższy kod w następujący sposób. Tutaj, jeśli zauważysz, że instrukcje importu i rejestratora zostały zmodyfikowane.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
import java.sql.SQLException;
import java.util.*;
public class Sample {
static Logger log = LoggerFactory.getLogger(Sample.class.getName());
public static void main(String[] args)throws IOException,SQLException {
log.debug("Hello this is a debug message");
log.info("Hello this is an info message");
}
}
Ponieważ już masz log4j.jar w swoim projekcie musisz dodać slf4j-api.jar i slf4jlog12.jar pliki do projektu, aby go wykonać.
Ograniczenia SLF4JMigrator
Poniżej przedstawiono ograniczenia migracji SLF4J.
Migrator nie zmodyfikuje skryptów budowania, takich jak mrówka, maven i bluszcz, które musisz zrobić samodzielnie.
Migrator nie obsługuje wiadomości innych niż typu String.
Migrator nie obsługuje poziomu FATAL.
Podczas pracy z log4j migrator nie będzie migrować wywołań do PropertyConfigurator ani DomConfigurator.