2013-05-28 38 views
20

我意識到這些依賴關係是針對Java servlet規範進行編譯所必需的,但我不清楚它們之間的差異,以及何時應該使用其中的一個而不是其他。javaee-api和javaee-web-api有什麼區別?

他們有什麼區別?一個是另一個的超集嗎?

<dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-api</artifactId> 
    <version>6.0</version> 
    <scope>provided</scope> 
</dependency> 

dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-web-api</artifactId> 
    <version>6.0</version> 
    <scope>provided</scope> 
</dependency> 

回答

36

javaee-web-api應該支持Java EE Web Profile

Java EE 6中推出的網絡配置文件從根本上簡化了平臺,能夠實現輕量,敏捷,引人注目的應用程序服務器具有激光焦點的Web應用程序開發了新的曙光的創建。

但是,如果您比較兩個不同的jar文件,它們之間幾乎沒有什麼不同。我用7-zip打開了它們,這兩個屏幕截圖顯示了唯一的(AFAIK)區別,即在javaee-web-api中不支持JMS,庫似乎在javaee-api中更大。

javaee-api

enter image description here

javaee-web-api

enter image description here