我有一個在GlassFish 4.1/Java EE 7(NetBeans 8.0.2)上運行的未使用Apache Maven的完整Java EE項目。什麼是「Java EE 7 API庫」和「Java EE Web 7 API庫」以及何時使用它們?
根據項目功能的不同,必須將CDI依賴項添加到項目/模塊,即EE模塊和Web模塊(以及一個類庫,如果有的話)。
我一直很困惑,看到有人推薦將「Java EE 7 API庫」或「Java EE Web 7 API庫」作爲CDI依賴項添加到編譯時類路徑中(這些庫是捆綁在NetBeans中,在使用NetBeans時可立即使用)。
由於這些庫包含可能從Servlet API開始的整個Java EE堆棧的API集合,因此將這些庫中的一個添加到編譯時類路徑(特別是在EE項目中)是沒有意義的, Java EE應用程序需要CDI功能。
爲什麼在NetBeans項目中多次提到添加這些庫中的一個時,只有作爲CDI依賴項的cdi-api.jar
就足夠了?
在Java EE應用程序中需要CDI功能時,在本網站或其他地方找不到正確的NetBeans項目庫。順便說一句,只添加cdi-api.jar
會好起來。
我的想法是,目前有多種方式來處理Enterprise Java中的依賴和注入。這就是你看到這些建議的原因。 –