Я пытаюсь написать класс, который обернут вокруг класса регистратора в Java. Мои функции ведения журнала имеют следующую форму:
public static void LogInfo(String fmt, Object... args) {
String callerClass = walker.getCallerClass().getName();
logger.info(String.format("[INFO] [%s] " + fmt, callerClass, args));
}
Проблема, с которой я сталкиваюсь, заключается в попытке записать примитивные типы, bool
, int
, double
, et c. Я немного прочитал об "Autoboxing" и подумал, что это будет работать для меня, но это не так. Когда я пытаюсь войти в систему, например,
int i = 123;
Log.LogInfo("log a number: %d", i);
Я получаю ошибку:
Exception in thread "main" java.util.IllegalFormatConversionException: d != [Ljava.lang.Object;
Я обычно не программист Java, поэтому не уверен, как решить эту проблему. Любая помощь будет принята с благодарностью! Спасибо