Eclipse報錯:Referenced classpath provider does not exist: org.maven.ide.eclipse……
阿新 • • 發佈:2019-02-10
Shell程式碼
Shell程式碼
Shell程式碼
- Referenced classpath provider does not exist: org.maven.ide.eclipse.launchconfig.classpathProvider
截圖如下:
引起這個錯誤的原因主要是新的m2e外掛的namespace已經修改了,而之前的工程的啟動配置依然指向舊外掛的名稱。我們可以在Eclipse workspace下檢視類的.launch檔案,具體路徑為:
Shell程式碼- \workspace\.metadata\.plugins\org.eclipse.debug.core\.launches
找到對應的類的.launch檔案,使用文字編輯器開啟后里面的內容應該類似如下:
- <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER"
- value="org.maven.ide.eclipse.launchconfig.classpathProvider"/>
- <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER"
- value="org.maven.ide.eclipse.launchconfig.sourcepathProvider"/>
實際上正確的配置應該是:
- <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER"
- value="org.eclipse.m2e.launchconfig.classpathProvider"/>
- <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER"
- value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
所以就能印證我們之前的猜測,maven外掛的namespace從 org.maven.ide.eclipse 修改成了org.eclipse.m2e 從而導致了這個問題的產生。
對於這個問題,最簡單的解決方案就是在IDE(Eclipse)裡右鍵選中工程,然後選擇Configure -> Convert to Maven Project ,這樣操作完以後,修復了損壞的launch configuration,啟動就正常了。