简体   繁体   English

Netbeans:意外异常

[英]Netbeans: Unexpected Exception

I installed Apache Netbeans on my PC.我在我的 PC 上安装了 Apache Netbeans。 And everything worked fine.一切正常。 But the next day i wanted to go on with my work, but since then i am getting all the time an exception:但是第二天我想继续我的工作,但从那以后我总是遇到一个例外:

A java.lang.IllegalAccessError exception has occurred.
Please report this at https://issues.apache.org/jira/projects/NETBEANS/issues,
including a copy of your messages.log file as an attachment.
The messages.log file is located in your 
C:\Users\svent\AppData\Roaming\NetBeans\12.0\var\log folder.

I have the follwoing settings:我有以下设置:

Product version: Apache NetBeans IDE 12.0产品版本:Apache NetBeans IDE 12.0

Java: 17;爪哇:17; OpenJDK 64-Bit Server VM 17+35-2724 OpenJDK 64 位服务器 VM 17+35-2724

System: Windows 10 amd64系统:Windows 10 amd64

I have tried to uninstall everything and install it again.我试图卸载所有内容并重新安装。 I also tried out to use Java 11 or Java 14. I also have tried to delete the 12.0 folder from netbeans in the AppData.我还尝试使用 Java 11 或 Java 14。我还尝试从 AppData 中的 netbeans 中删除 12.0 文件夹。 But none of this helped.但这些都没有帮助。

Here is the exact Exeption:这是确切的例外:

java.lang.IllegalAccessError: superclass access check failed: class org.netbeans.lib.nbjavac.services.CancelAbort (in unnamed module @0x6a51d5d0) cannot access class com.sun.tools.javac.util.Abort (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.util to unnamed module @0x6a51d5d0
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
    at org.netbeans.JarClassLoader.doLoadClass(JarClassLoader.java:287)
    at org.netbeans.ProxyClassLoader.selfLoadClass(ProxyClassLoader.java:246)
    at org.netbeans.ProxyClassLoader.doFindClass(ProxyClassLoader.java:174)
    at org.netbeans.ProxyClassLoader.loadClass(ProxyClassLoader.java:125)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
    at org.netbeans.modules.java.source.parsing.JavacParserFactory.createPrivateParser(JavacParserFactory.java:79)
    at org.netbeans.api.java.source.JavaSource$JavaSourceAccessorImpl.createCompilationController(JavaSource.java:739)
    at org.netbeans.modules.java.source.JavaSourceUtilImpl.getModuleInfoHandle(JavaSourceUtilImpl.java:271)
    at org.netbeans.modules.java.preprocessorbridge.spi.JavaSourceUtilImpl$MyAccessor.getModuleInfoHandle(JavaSourceUtilImpl.java:119)
    at org.netbeans.modules.java.preprocessorbridge.api.ModuleUtilities.init(ModuleUtilities.java:122)
    at org.netbeans.modules.java.preprocessorbridge.api.ModuleUtilities.resolveModule(ModuleUtilities.java:104)
    at org.netbeans.modules.java.api.common.classpath.ModuleClassPaths$ModuleInfoClassPathImplementation.getResources(ModuleClassPaths.java:882)
    at org.netbeans.api.java.classpath.ClassPath.entries(ClassPath.java:363)
    at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.getResources(MuxClassPathImplementation.java:90)
    at org.netbeans.api.java.classpath.ClassPath$SPIListener.propertyChange(ClassPath.java:1343)
    at org.openide.util.WeakListenerImpl$PropertyChange.propertyChange(WeakListenerImpl.java:190)
    at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:343)
    at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:335)
    at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:268)
    at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.propertyChange(MuxClassPathImplementation.java:127)
    at org.openide.util.WeakListenerImpl$PropertyChange.propertyChange(WeakListenerImpl.java:190)
    at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:343)
    at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:335)
    at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:268)
    at org.netbeans.modules.java.api.common.classpath.ClassPathProviderImpl$SourceLevelSelector.propertyChange(ClassPathProviderImpl.java:1575)
    at org.openide.util.WeakListenerImpl$PropertyChange.propertyChange(WeakListenerImpl.java:190)
    at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:343)
    at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:335)
    at org.netbeans.spi.project.support.ant.SequentialPropertyEvaluator.stateChanged(SequentialPropertyEvaluator.java:185)
    at org.openide.util.WeakListenerImpl$Change.stateChanged(WeakListenerImpl.java:331)
    at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:108)
    at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:94)
    at org.netbeans.spi.project.support.ant.ProjectProperties$PP$2.run(ProjectProperties.java:365)
    at org.netbeans.spi.project.support.ant.ProjectProperties$PP$2.run(ProjectProperties.java:363)
    at org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:188)
    at org.openide.util.Mutex.readAccess(Mutex.java:193)
    at org.netbeans.spi.project.support.ant.ProjectProperties$PP.fireChange(ProjectProperties.java:371)
    at org.netbeans.spi.project.support.ant.ProjectProperties$PP.put(ProjectProperties.java:225)
    at org.netbeans.spi.project.support.ant.ProjectProperties.putProperties(ProjectProperties.java:107)
    at org.netbeans.spi.project.support.ant.AntProjectHelper$6.run(AntProjectHelper.java:740)
    at org.netbeans.spi.project.support.ant.AntProjectHelper$6.run(AntProjectHelper.java:738)
    at org.netbeans.modules.openide.util.DefaultMutexImplementation.writeAccess(DefaultMutexImplementation.java:229)
    at org.openide.util.Mutex.writeAccess(Mutex.java:246)
    at org.netbeans.spi.project.support.ant.AntProjectHelper.putProperties(AntProjectHelper.java:738)
    at org.netbeans.modules.java.j2seproject.api.J2SEProjectBuilder.createProject(J2SEProjectBuilder.java:579)
    at org.netbeans.modules.java.j2seproject.api.J2SEProjectBuilder.lambda$build$0(J2SEProjectBuilder.java:312)
    at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:102)
    at org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:494)
    at org.netbeans.modules.java.j2seproject.api.J2SEProjectBuilder.build(J2SEProjectBuilder.java:310)
    at org.netbeans.modules.java.j2seproject.J2SEProjectGenerator.createProject(J2SEProjectGenerator.java:59)
    at org.netbeans.modules.java.j2seproject.ui.wizards.NewJ2SEProjectWizardIterator.instantiate(NewJ2SEProjectWizardIterator.java:187)
    at org.openide.loaders.TemplateWizard$InstantiatingIteratorBridge.instantiate(TemplateWizard.java:1048)
    at org.openide.loaders.TemplateWizard.handleInstantiate(TemplateWizard.java:602)
    at org.netbeans.modules.project.ui.NewProjectWizard.handleInstantiate(NewProjectWizard.java:51)
    at org.openide.loaders.TemplateWizard.instantiateNewObjects(TemplateWizard.java:436)
    at org.openide.loaders.TemplateWizardIterImpl.instantiate(TemplateWizardIterImpl.java:228)
    at org.openide.loaders.TemplateWizardIteratorWrapper$ProgressInstantiatingIterator.instantiate(TemplateWizardIteratorWrapper.java:155)
    at org.openide.WizardDescriptor.callInstantiateOpen(WizardDescriptor.java:1602)
    at org.openide.WizardDescriptor.callInstantiate(WizardDescriptor.java:1546)
    at org.openide.WizardDescriptor.access$2300(WizardDescriptor.java:67)
    at org.openide.WizardDescriptor$Listener$2$1.run(WizardDescriptor.java:2233)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
    at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
    at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

I hope someone can help me with this, because i don't know what to do anymore.我希望有人能帮我解决这个问题,因为我不知道该怎么办了。

You are running NetBeans 12.0 with JDK 17. This is not a supported combination.您正在使用 JDK 17 运行 NetBeans 12.0。这不是受支持的组合。

You have two options:您有两个选择:

  • Stick with NetBeans 12.0, and use JDK 14 instead.坚持使用 NetBeans 12.0,并改用 JDK 14。
  • Stick with JDK 17, and use NetBeans 12.5 instead.坚持使用 JDK 17,并改用 NetBeans 12.5。 (In this case you don't need to uninstall NetBeans 12.0 first.) (在这种情况下,您无需先卸载 NetBeans 12.0。)

See the release notes for NetBeans 12.0 and NetBeans 12.5 for details on which versions of Java are supported.有关支持哪些 Java 版本的详细信息,请参阅NetBeans 12.0NetBeans 12.5的发行说明。

Questions similar to this one are common here, and it's unfortunate that NetBeans doesn't do a better job of proactively preventing unsupported JDKs from being used.与此类似的问题在这里很常见,遗憾的是 NetBeans 在主动防止使用不受支持的 JDK 方面没有做得更好。 That said, in NetBeans defense:也就是说,在 NetBeans 防御中:

  • The error message you posted was explicitly referring you to the NetBeans log file ( messages.log ) for further information.您发布的错误消息明确地将您引向 NetBeans 日志文件 ( messages.log ) 以获取更多信息。
  • The NetBeans Release Notes always explicitly state which versions of Java are supported for a given NetBeans release, and no assumptions should be made. NetBeans 发行说明始终明确说明给定的 NetBeans 发行版支持哪些 Java 版本,并且不应做出任何假设。 For example, in the case of NetBeans 12.5 the supported releases are "JDK LTS releases 8 and 11, with experimental support for JDK 17" .例如,在 NetBeans 12.5 的情况下,受支持的版本是“JDK LTS 版本 8 和 11,具有对 JDK 17 的实验性支持” That information is important, because it shows that although JDK 17 has "experimental support", releases JDK 12 through JDK 16 are not supported.该信息很重要,因为它表明尽管 JDK 17 具有“实验性支持”,但不支持 JDK 12 至 JDK 16 版本。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM