特定のプロジェクトでEclipseのJava検索機能を使用しているときに、誰かが私を助けてくれることを望んでいました。
特定のプロジェクトで Java 検索を使用すると、エラー メッセージが表示されますClass file name must end with .class
(以下のスタック トレースを参照)。これはすべてのプロジェクトで発生しているわけではなく、特定の 1 つのプロジェクトで発生しているようです。
私はすでに試しましたProject -> Clean
...そしてEclipseを閉じ、ビルドされたすべてのクラスファイルを削除し、Eclipseを再起動しても無駄です。
問題について Google で見つけた唯一の参照はhttp://www.crazysquirrel.com/computing/java/eclipse/error-during-java-search.jspxにありますが、残念ながら彼の解決策 (終了、クラスファイルの削除、再起動)はうまくいきませんでした。
誰かが試してみることを提案できる場合、またはそれを追跡するのに役立つ可能性のある収集できる情報がさらにある場合は、ポインターを大いに感謝します.
Version: 3.4.0
Build id: I20080617-2000
また、このスレッド ( http://www.myeclipseide.com/PNphpBB2-viewtopic-t-20067.html ) も見つかりました。これは、プロジェクト名にピリオドが含まれている場合に同じ問題が発生する可能性があることを示しています。残念ながら、私のセットアップではそうではないので、まだ行き詰まっています。
Caused by: java.lang.IllegalArgumentException: Class file name must end with .class
at org.eclipse.jdt.internal.core.PackageFragment.getClassFile(PackageFragment.java:182)
at org.eclipse.jdt.internal.core.util.HandleFactory.createOpenable(HandleFactory.java:109)
at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1177)
at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.locateMatches(JavaSearchParticipant.java:94)
at org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches(BasicSearchEngine.java:223)
at org.eclipse.jdt.internal.core.search.BasicSearchEngine.search(BasicSearchEngine.java:506)
at org.eclipse.jdt.core.search.SearchEngine.search(SearchEngine.java:551)
at org.eclipse.jdt.internal.corext.refactoring.RefactoringSearchEngine.internalSearch(RefactoringSearchEngine.java:142)
at org.eclipse.jdt.internal.corext.refactoring.RefactoringSearchEngine.search(RefactoringSearchEngine.java:129)
at org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeProcessor.initializeReferences(RenameTypeProcessor.java:594)
at org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeProcessor.doCheckFinalConditions(RenameTypeProcessor.java:522)
at org.eclipse.jdt.internal.corext.refactoring.rename.JavaRenameProcessor.checkFinalConditions(JavaRenameProcessor.java:45)
at org.eclipse.ltk.core.refactoring.participants.ProcessorBasedRefactoring.checkFinalConditions(ProcessorBasedRefactoring.java:225)
at org.eclipse.ltk.core.refactoring.Refactoring.checkAllConditions(Refactoring.java:160)
at org.eclipse.jdt.internal.ui.refactoring.RefactoringExecutionHelper$Operation.run(RefactoringExecutionHelper.java:77)
at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:39)
at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:709)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1800)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:4650)
at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:92)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
McDowell に感謝します。プロジェクトを閉じて開くと、(少なくとも今のところ) 修正されたようです。