Java无法打开/创建prefs错误
我试图让MIDI音频播放,但每当我这样做时,它总是返回错误`Java无法打开/创建prefs错误,java,Java,我试图让MIDI音频播放,但每当我这样做时,它总是返回错误` May 18, 2014 10:23:29 AM java.util.prefs.WindowsPreferences <init> WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error co
May 18, 2014 10:23:29 AM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root
0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
这是一个众所周知的Windows问题 HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft…..右键单击图标,然后将权限更改为完全操作
这是一个已知的Java bug,仍然存在于Windows10和update 112上。只要在提升的命令提示符下运行一次程序,它就会消失。这是java的问题 我尝试只使用用户的首选项来解决问题,但是WindowsPreferences类有以下代码
static final Preferences userRoot = new WindowsPreferences(USER_ROOT_NATIVE_HANDLE, WINDOWS_ROOT_PATH);
static final Preferences systemRoot = new windowsPreferences(SYSTEM_ROOT_NATIVE_HANDLE, WINDOWS_ROOT_PATH);
所以它尝试读取系统首选项yes或yes
我曾尝试在HKEY_LOCAL_机器上更改权限,但现在在win-10中它不起作用。在过去,在win-7中,它起了作用。
这并不重要,如果使用USER\u PREFS,它只是一个跟踪
这是我的(棘手的)解决方案。。。在main方法中或在使用首选项之前编写此代码
static {
PlatformLogger logger = PlatformLogger.getLogger("java.util.prefs");
logger.setLevel(Level.SEVERE);
}
我在64位Windows 10上遇到了这个问题,并通过手动创建以下注册表项解决了这个问题
HKEY_LOCAL_MACHINE\Software\JavaSoft\Prefs
希望这对Windows用户有所帮助。可能重复:尝试过,但创建新密钥时返回
无法创建密钥
可能不是权限不足的问题吗?您是否尝试以管理员身份创建密钥?谢谢,我已修复了它,我意识到我只是进入菜单并选择new
。我实际上没有去HKEY_LOCAL_MACHINE\Software\JavaSoft`这不是一个解决方案,它只会使警告日志消失,不应该使用。为我工作,谢谢。更多详细信息,只需右键单击“JavaSoft”-“New”-“Key”,然后将Key重命名为“Prefs”。重新运行gradle任务,警告消息消失。
HKEY_LOCAL_MACHINE\Software\JavaSoft\Prefs