2016-08-24 2 views
2

Как подавить предупреждение, выводимое на консоль с помощью следующего фрагмента кода:Подавление Java Preferences системный_корневой_каталог Предупреждение

Preferences systemRoot = Preferences.systemRoot(); 

Предупреждения выглядит следующим образом (или аналогичные):

WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5. 

Примечание :
Я хочу просто игнорировать это предупреждение, не печатая ничего на консоль, а не not manually create a registry key или running the application as administrator.

Вот метод отвечает за предупреждение:

private WindowsPreferences(int rootNativeHandle, byte[] rootDirectory) { 
     super(null, ""); 
     int[] result = 
       WindowsRegCreateKeyEx1(rootNativeHandle, rootDirectory); 
     if (result[ERROR_CODE] != ERROR_SUCCESS) { 
      logger().warning("Could not open/create prefs root node " + 
        byteArrayToString(windowsAbsolutePath()) + 
        " at root 0x" + Integer.toHexString(rootNativeHandle()) + 
        ". Windows RegCreateKeyEx(...) returned error code " + 
        result[ERROR_CODE] + "."); 
      isBackingStoreAvailable = false; 
      return; 
     } 
     // Check if a new node 
     newNode = (result[DISPOSITION] == REG_CREATED_NEW_KEY); 
     closeKey(result[NATIVE_HANDLE]); 
    } 

ответ

2

Я получил его :)

PlatformLogger platformLogger = PlatformLogger.getLogger("java.util.prefs"); 
platformLogger.setLevel(PlatformLogger.Level.OFF); 

В качестве альтернативы this.

Смежные вопросы