Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 294871

Summary: An internal error occurred during: "Items filtering".
Product: [Eclipse Project] JDT Reporter: Alexander Veit <Alexander.Veit>
Component: CoreAssignee: JDT-Core-Inbox <jdt-core-inbox>
Status: CLOSED DUPLICATE QA Contact:
Severity: major    
Priority: P3 CC: markus.kell.r
Version: 3.5   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Alexander Veit CLA 2009-11-11 09:36:13 EST
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
Build Identifier: Build id: 20090920-1017

From time to time eclipse emits the following error. Then the open type dialog does not work anymore.

An internal error occurred during: "Items filtering".

java.lang.IllegalArgumentException: Class file name must end with .class
	at org.eclipse.jdt.internal.core.PackageFragment.getClassFile(PackageFragment.java:194)
	at org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper.createTypeFromPath(TypeNameMatchRequestorWrapper.java:191)
	at org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper.acceptType(TypeNameMatchRequestorWrapper.java:107)
	at org.eclipse.jdt.internal.core.search.BasicSearchEngine$3.acceptIndexMatch(BasicSearchEngine.java:1111)
	at org.eclipse.jdt.core.search.SearchPattern.acceptMatch(SearchPattern.java:299)
	at org.eclipse.jdt.core.search.SearchPattern.findIndexMatches(SearchPattern.java:2124)
	at org.eclipse.jdt.internal.core.search.matching.MatchLocator.findIndexMatches(MatchLocator.java:336)
	at org.eclipse.jdt.internal.core.search.PatternSearchJob.search(PatternSearchJob.java:97)
	at org.eclipse.jdt.internal.core.search.PatternSearchJob.execute(PatternSearchJob.java:63)
	at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(JobManager.java:276)
	at org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(BasicSearchEngine.java:1122)
	at org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames(SearchEngine.java:815)
	at org.eclipse.jdt.internal.ui.dialogs.FilteredTypesSelectionDialog.fillContentProvider(FilteredTypesSelectionDialog.java:556)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.filterContent(FilteredItemsSelectionDialog.java:2182)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.internalRun(FilteredItemsSelectionDialog.java:2124)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.doRun(FilteredItemsSelectionDialog.java:2096)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$FilterJob.run(FilteredItemsSelectionDialog.java:2083)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

If you are luck you may be able to fix this by deleting index files (I'm missing the reindexing function in the Eclipse menu). If you are not so lucky you have to find the resource that produces the error and remove it. This usually causes a lot of pain.

To relieve the pain it would be nice if the error message would inform the user not only that "Class file name must end with .class" but also what the name was that Eclipse encountered. With other words Eclipse should not scoff at the poor user.

Reproducible: Sometimes

Steps to Reproduce:
1. I don't know how to reproduce it.
Comment 1 Markus Keller CLA 2009-11-11 13:20:37 EST
Stack trace is the same as for bug 286379. If you see this with I20091026-2000 or later, please reopen.

*** This bug has been marked as a duplicate of bug 286379 ***