NetBeans似乎无法解析jdk.internal.*类,但其他内部API(即com.sun.*)没有解决问题.
编译错误:"jdk.internal.org.objectweb.asm.ClassReader不存在" 
(此包存在于rt.jar中)
这是NetBeans的错误吗?
NetBeans:8.0(Build 201403101706)
Java:1.8.0_20-ea; Java HotSpot(TM)64位服务器VM 25.20-b20 
系统:在amd64上运行的Windows 7版本6.1
这是javac的限制.默认情况下,javac不会从rt.jar读取类.它从符号文件中读取,该文件仅包含标准API和一些内部API(例如com.sun.,com.oracle.和sun.*).
要禁用此机制,我可以使用javac -XDignore.symbol.file=true选项.
对于Maven,编辑POM文件,如下所示.
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
    <compilerArgument>-XDignore.symbol.file</compilerArgument>
  </configuration>
</plugin>
现在,我可以无错误地构建项目,但错误通知仍保留在NetBeans编辑器UI上.要删除这些错误,我-J-DCachingArchiveProvider.disableCtSym在NETBEANS_HOME/etc/netbeans.conf文件中附加选项.
netbeans_default_options="... -J-DCachingArchiveProvider.disableCtSym=true"
最后,我从NetBeans环境中删除了所有错误.
| 归档时间: | 
 | 
| 查看次数: | 8599 次 | 
| 最近记录: |