Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse(开普勒)工作区行为怪异(类型层次结构,搜索不起作用的引用)_Java_Eclipse_Eclipse Kepler - Fatal编程技术网

Java Eclipse(开普勒)工作区行为怪异(类型层次结构,搜索不起作用的引用)

Java Eclipse(开普勒)工作区行为怪异(类型层次结构,搜索不起作用的引用),java,eclipse,eclipse-kepler,Java,Eclipse,Eclipse Kepler,使用运行在Windows7(64位)上的EclipseKepler,我的工作区看起来很奇怪 以下内容不起作用(工作区范围): 类/方法的类型层次结构显示为空 查找参考资料 试图 重建/清理/关闭和打开项目 重新启动Eclipse 重新启动 以清除模式引导Eclipse(-Clean) 手动清除索引 到目前为止,唯一有效的方法是切换到一个新的工作区,并在那里查看我的一个项目。然而,这是非常次优的,因为我在当前的工作区中有一定数量的项目和设置 编辑-堆栈跟踪 当我在类型层次结构视图中特别“关

使用运行在Windows7(64位)上的EclipseKepler,我的工作区看起来很奇怪

以下内容不起作用(工作区范围):

  • 类/方法的类型层次结构显示为空
  • 查找参考资料
试图

  • 重建/清理/关闭和打开项目
  • 重新启动Eclipse
  • 重新启动
  • 以清除模式引导Eclipse(-Clean)
  • 手动清除索引
到目前为止,唯一有效的方法是切换到一个新的工作区,并在那里查看我的一个项目。然而,这是非常次优的,因为我在当前的工作区中有一定数量的项目和设置

编辑-堆栈跟踪

当我在类型层次结构视图中特别“关注”时,我得到了以下堆栈跟踪:

!ENTRY org.eclipse.core.jobs 4 2 2013-12-19 15:08:39.156
!MESSAGE An internal error occurred during: "Computing type hierarchy of 'String - java.lang'...".
!STACK 0
java.lang.NullPointerException
    at org.eclipse.core.runtime.Path.<init>(Path.java:183)
    at org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:182)
    at org.eclipse.jdt.internal.core.JavaModel.getJavaProject(JavaModel.java:189)
    at org.eclipse.jdt.internal.core.search.IndexSelector.getJavaProject(IndexSelector.java:286)
    at org.eclipse.jdt.internal.core.search.IndexSelector.initializeIndexLocations(IndexSelector.java:217)
    at org.eclipse.jdt.internal.core.search.IndexSelector.getIndexLocations(IndexSelector.java:276)
    at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.selectIndexURLs(JavaSearchParticipant.java:121)
    at org.eclipse.jdt.internal.core.search.PatternSearchJob.getIndexes(PatternSearchJob.java:84)
    at org.eclipse.jdt.internal.core.search.SubTypeSearchJob.getIndexes(SubTypeSearchJob.java:33)
    at org.eclipse.jdt.internal.core.search.PatternSearchJob.ensureReadyToRun(PatternSearchJob.java:52)
    at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(JobManager.java:174)
    at org.eclipse.jdt.internal.core.hierarchy.IndexBasedHierarchyBuilder.searchAllPossibleSubTypes(IndexBasedHierarchyBuilder.java:523)
    at org.eclipse.jdt.internal.core.hierarchy.IndexBasedHierarchyBuilder.determinePossibleSubTypes(IndexBasedHierarchyBuilder.java:406)
    at org.eclipse.jdt.internal.core.hierarchy.IndexBasedHierarchyBuilder.build(IndexBasedHierarchyBuilder.java:120)
    at org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.compute(TypeHierarchy.java:300)
    at org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.refresh(TypeHierarchy.java:1267)
    at org.eclipse.jdt.internal.core.CreateTypeHierarchyOperation.executeOperation(CreateTypeHierarchyOperation.java:90)
    at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728)
    at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:788)
    at org.eclipse.jdt.internal.core.BinaryType.newTypeHierarchy(BinaryType.java:918)
    at org.eclipse.jdt.internal.core.BinaryType.newTypeHierarchy(BinaryType.java:876)
    at org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.createTypeHierarchy(TypeHierarchyLifeCycle.java:299)
    at org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.doHierarchyRefresh(TypeHierarchyLifeCycle.java:330)
    at org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.doHierarchyRefreshBackground(TypeHierarchyLifeCycle.java:271)
    at org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle$2.run(TypeHierarchyLifeCycle.java:224)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
!条目org.eclipse.core.jobs 4 2 2013-12-19 15:08:39.156
!消息:“正在计算'String-java.lang'的类型层次结构…”期间发生内部错误。
!堆栈0
java.lang.NullPointerException
位于org.eclipse.core.runtime.Path(Path.java:183)
位于org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:182)
位于org.eclipse.jdt.internal.core.JavaModel.getJavaProject(JavaModel.java:189)
位于org.eclipse.jdt.internal.core.search.IndexSelector.getJavaProject(IndexSelector.java:286)
位于org.eclipse.jdt.internal.core.search.IndexSelector.initializeIndexLocations(IndexSelector.java:217)
位于org.eclipse.jdt.internal.core.search.IndexSelector.getIndexLocations(IndexSelector.java:276)
位于org.eclipse.jdt.internal.core.search.JavaSearchParticipant.selectIndexURLs(JavaSearchParticipant.java:121)
位于org.eclipse.jdt.internal.core.search.PatternSearchJob.getIndexes(PatternSearchJob.java:84)
位于org.eclipse.jdt.internal.core.search.subsubiteSearchJob.getIndexes(subiteSearchJob.java:33)
位于org.eclipse.jdt.internal.core.search.PatternSearchJob.ensureReadyToRun(PatternSearchJob.java:52)
位于org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(JobManager.java:174)
位于org.eclipse.jdt.internal.core.hierarchy.IndexBasedHierarchyBuilder.searchAllPossibleSubTypes(IndexBasedHierarchyBuilder.java:523)
位于org.eclipse.jdt.internal.core.hierarchybuilder.IndexBasedHierarchyBuilder.determinatePossibleSublities(IndexBasedHierarchyBuilder.java:406)
位于org.eclipse.jdt.internal.core.hierarchy.IndexBasedHierarchyBuilder.build(IndexBasedHierarchyBuilder.java:120)
位于org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.compute(TypeHierarchy.java:300)
位于org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.refresh(TypeHierarchy.java:1267)
位于org.eclipse.jdt.internal.core.CreateTypeHierarchyOperation.executeOperation(CreateTypeHierarchyOperation.java:90)
位于org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728)
位于org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:788)
位于org.eclipse.jdt.internal.core.BinaryType.newTypeHierarchy(BinaryType.java:918)
位于org.eclipse.jdt.internal.core.BinaryType.newTypeHierarchy(BinaryType.java:876)
位于org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.createTypeHierarchy(TypeHierarchyLifeCycle.java:299)
位于org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.doHierarchyRefresh(TypeHierarchyLifeCycle.java:330)
位于org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle.doHierarchyRefreshBackground(TypeHierarchyLifeCycle.java:271)
位于org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyLifeCycle$2.run(TypeHierarchyLifeCycle.java:224)
位于org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
有人吗?

发现了问题

出于某种原因,我的一个项目上有一个损坏的资源。它没有显示在包树中,但在Eclipse的错误日志中显示为

为外部文件夹X:\somefolder创建链接时出错

在检查每个项目之后(因为错误没有指向一个),我确实在一个构建路径中找到了这个资源(在配置构建路径菜单中,它确实显示了一个错误图标!),并将其删除

现在,一切都恢复了

谢谢大家的回复/评论。为将来遇到同样问题的开发人员发布此消息


经验教训:请(广泛地)检查您的Eclipse错误日志

我曾经在工作中遇到过类似的问题,只是缺少了一切。不仅是类型层次结构,还有项目资源管理器中的包等等。IIRC它与.metadata文件夹有关。编辑:也许这个帖子会有帮助:我确实感觉它可能在.metadata中,但正如我在问题中所说的,清除.metadata\.plugins\org.eclipse.jdt.core文件夹(清除索引)不起作用:-(对不起,我一定没有看到那部分没关系,只是说:-)很高兴你发现了这个问题!谢谢分享