使用 NetBeans 时遇到错误:
Not all requested modules can be enabled: [StandardModule:org.netbeans.modules.nbjavac jarFile: C:\Users...\AppData\Roaming\NetBeans\11.2\modules\org-netbeans-modules-nbjavac.jar]
我相信这与我的问题有关,即 NetBeans 未显示 Java 提示。
该文件存在于 C:\Users\...\AppData\Roaming\NetBeans\11.2\modules\org-netbeans-modules-nbjavac.jar
中。
这是唯一被标记为错过的模块。
我知道一个常见的问题是多个模块由于错误的 JDK 路径而无法启用。我的 JDK 之路似乎是正确的:
netbeans_jdkhome="D:\Program Files\Java\jdk1.8.0_231"
如果我将其注释掉(如某些解决方案中的建议),则提示有效,但由于 TomEE 上的多个错误,项目无法启动(在未注释的 JDK 下工作得很好):
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.apache.openejb.loader.TomcatClassPath$3 (file:/D:/Programming/apache-tomee-webprofile-7.0.2/lib/openejb-loader-7.0.2.jar) to method java.net.URLClassLoader.addURL(java.net.URL) WARNING: Please consider reporting this to the maintainers of org.apache.openejb.loader.TomcatClassPath$3 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 06-Jan-2020 06:24:23.213 INFO [main] org.apache.openejb.util.OptionsLog.info Using 'openejb.jdbc.datasource-creator=org.apache.tomee.jdbc.TomEEDataSourceCreator' 06-Jan-2020 06:24:23.230 SEVERE [main] jdk.internal.reflect.NativeMethodAccessorImpl.invoke Catalina.start org.apache.catalina.LifecycleException: Failed to initialize component [StandardServer[8005]] at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:112) at org.apache.catalina.startup.Catalina.load(Catalina.java:606) at org.apache.catalina.startup.Catalina.load(Catalina.java:629) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:311) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:494)
06-Jan-2020 06:24:23.231 WARNING [main] jdk.internal.reflect.NativeMethodAccessorImpl.invoke Calling stop() on failed component [StandardServer[8005]] to trigger clean-up did not complete. org.apache.catalina.LifecycleException: Failed to stop component [StandardServer[8005]] at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:238) at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:264) at org.apache.catalina.startup.Catalina.start(Catalina.java:659) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:567) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495) Caused by: org.apache.catalina.LifecycleException: An invalid Lifecycle transition was attempted ([before_stop]) for component [StandardService[Catalina]] in state [INITIALIZED] at org.apache.catalina.util.LifecycleBase.invalidTransition(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:213) at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:812) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:226) ... 8 more
有没有办法使用我的 JDK 并使用提示?
最佳答案
我通过在 NetBeans (11.3) 中重新安装 nb-javac 插件 (2.0) 解决了完全相同的问题
- 打开 NetBeans
- 转至工具 > 插件 > 已安装
- 启用复选框“显示详细信息”
- 搜索 javac 以找到行“The nb-javac Java 编辑支持库”
- 选择并卸载
- 重新启动 NetBeans
- NetBeans 将建议在信息框中安装 nb-javac。只需点击链接并按照说明操作即可
NetBeans 12.1 和 NetBeans 12.2 更新 这解决了错误消息“无法启用 nb-javac 插件”
关于java - 并非所有请求的模块都可以启用 - org-netbeans-modules-nbjavac.jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59606822/