前幾天接手一個項目,從svn上下載代碼之後,發現沒有Maven Dependencies,在網上搜了各種各樣的方法,不過沒有適用於我這種情況的,現將網上的各種情況及本人的遇到的問題進行總結,以備不時之需,也希望能夠給大家提供點幫助。
Maven支持沒有打開
這種情況一般是Eclipse自帶的Maven,或者自己裝的Maven並沒有打開服務。這種情況一般可以通過下面這種方式檢查:【點擊打開即可】
右擊 Maven project --> Macven --> Enable Dependency Management
截圖如右:.classpath文件問題
這種情況一般是.classpath文件缺少classpathentry選項,可以檢查下是否包含“org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER”或者“org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER”。這兩者的區別是版本的不同,具體參考:eclipse
m2eclipse插件遷移到m2e插件
如果沒有,則添加上相應的選項【一般3.x的插件都是第一個常用】。貼一個我自己的maven web項目的.classpath如下:<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
<classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
項目爲非maven項目
一般這種情況相對較少,但也有可能。如果下載下來的項目根本不是maven項目,也就是項目右上角沒有“M”的標誌,可以通過:
右鍵項目-->configure-->Convert to Maven Project
jar包問題
本人遇到的問題就是這個問題,在同事的幫忙下才解決的問題,發現問題的方法是:
通過 右鍵-->run as -->maven clean
發現clean不成功,說是缺少jar包,但是項目卻不自動下載,這個問題就比較尷尬了,所以jar包都沒有,也就沒有Maven Dependencies。解決方法:直接拷貝別人的jar包倉庫,然後重新maven clean,一切正常。 我們在很多情況下都是jar包倉庫的問題,只不過不到最後一步都不想這麼搞,因爲倉庫比較大所以比較麻煩。
關於maven項目Maven Dependencies的問題就總結這些,基本上也涵蓋了大部分的情況,如果後面再遇到奇葩的,再進行記錄。