2013-01-04 79 views
1

我使用eclipse和Apachw Maven。我安裝了Eclipse的Maven插件。並有項目。我想補充的servlet的API一些依賴到我的POM文件,你可以看到他們:Maven不添加庫

<dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>servlet-api</artifactId> 
      <version>2.5</version> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet.jsp</groupId> 
      <artifactId>jsp-api</artifactId> 
      <version>2.1</version> 
     </dependency> 

     <dependency> 
      <groupId>org.glassfish.web</groupId> 
      <artifactId>jstl-impl</artifactId> 
      <version>1.2</version> 
     </dependency> 

     <dependency> 
      <groupId>javax.servlet.jsp.jstl</groupId> 
      <artifactId>jstl-api</artifactId> 
      <version>1.2</version> 
     </dependency> 

我刷新我的項目,讓行家乾淨,然後包,但結果我得到這個:

enter image description here

所以瑪比有人可以幫助我嗎? (我可以下載並添加在WEB-INF/lib文件夾中的所有本庫,但我不婉做到這一點)

UPDATE

enter image description here

+0

你在eclipse中試過了乾淨嗎?它是否被配置爲eclipse中的maven項目? – Subin

+2

你不應該發佈圖片,而應該使用代碼標記來讓你的代碼片段更容易引用其他人。 – SpaceTrucker

+0

是的,我嘗試清理(我寫在後)。是的,我的項目被配置爲maven項目 –

回答

2

根據您發佈的Libraries選項卡的圖像,該項目不會導入爲Maven Project,而且看起來更像Eclipse項目(動態Web項目),因爲它沒有「Maven Dependencie」 s「條目。

在這種情況下,你可以重新導入與現有Maven項目的選擇項目(非現有項目到工作區)或...

你可以離開它,因爲它是和「添加庫」 - >「運行時服務器「並選擇一些服務器實例。

1

嘗試在你的項目運行mvn eclipse:eclipse,這將爲您的項目創建.classpath和.project文件。您還需要在Eclipse中重建您的項目項目 - >清理

您遇到的問題是庫不在您的.classpath中,運行eclipse:eclipse應對此進行排序。

.classpath和.project是Eclipse專用文件,用於存放關於項目的元數據。 .classpath特別指向相關類的位置。

有關更多信息,請參見http://maven.apache.org/plugins/maven-eclipse-plugin/eclipse-mojo.html

+0

。我有Web應用程序,當我寫mvn eclipse時:eclipse它是創建簡單的桌面應用程序的配置。所以我認爲我必須寫這個mvn eclipse:eclipse -Dwtpversion = 2.0。我試圖清理項目,但這並沒有幫助。在完成後,我使用eclipse再次創建我的Web應用程序,然後在Maven項目中對其進行配置。只有這有助於 –

+0

您需要刷新項目並從eclipse中清除它。當你做mvn eclipse時:eclipse不會創建一個'簡單的桌面應用程序',它會根據你的pom創建.project和.classpath文件,這包括依賴關係。 –

1

在Eclipse中使用Maven項目可能有點棘手。你可以嘗試以下步驟:

  • 構建你的命令行Maven項目:在項目文件夾,類型mvn clean install
  • 當項目順利建成,刷新您的項目在Eclipse
  • 清理項目中Eclipse,以重建您的工作空間