![](/img/trans.png)
[英]How can I access a file in WEB-INF/META-INF in a java web app?
[英]Google App Engine WEB-INF and META-INF
使用Google-Eclipse插件創建新的Web應用程序項目時 ,它會為您創建整個項目目錄結構,包括:
src/
META-INF/
jdoconfig.xml
persistence.xml
war/
WEB-INF/
lib/
web.xml
...etc.
首先,我的理解是META-INF/
僅適用於實用程序JAR,而不適用於Web應用程序(WAR)。 所以在項目中看到src/META-INF/*
讓我感到意外。 但后來我看到GAE網絡應用程序的示例包裝如下:
TheWebApp.war/
WEB-INF/
lib/
classes/
META-INF/
web.xml
...
blah.jsp
...etc/
使用WEB-INF/classes/META-INF/
! 除此之外,我沒有看到GAE項目和MANIFEST.MF
目錄的任何提及,我總是看到在META-INF
下打包使用。 現在我真的很困惑。
所以我認為我首先需要確認/澄清META-INF
和WEB-INF
的作用,然后了解它們如何在任何 Web應用程序的WAR中一起使用,然后了解任何特性(如果它們存在) )GAE放置在WAR結構上。
注意:我沒有使用Maven,並且至少在接下來的6-12個月內沒有打算(我現在沒有時間學習它)。 因此,如果這些問題的任何答案取決於您是否使用基於Maven的buld,我更喜歡非Maven答案,因為我正在使用Ant / Ivy。
所以我問:
META-INF
目錄的正常內容是什么? 對於WAR(GAE和非GAE)都需要MANIFEST.MF
,為什么或為什么不呢? environment.properties
或myapp-custom-resource-config.xml
...我在哪里放這些? 在WEB-INF/
, WEB-INF/classes
, WEB-INF/classes/META-INF
? 別的地方? WEB-INF
和META-INF
目錄的正確內容是什么,包裝它們的正確方法是什么? 提前致謝。
與JAR文件META-INF目錄一樣,根級別/ META-INF目錄包含應用程序清單文件。 它還可以包含特定Web容器或應用程序服務器的資源。 例如,Apache Tomcat在此目錄中查找並使用context.xml文件來幫助自定義如何在Tomcat中部署應用程序。
與JAR文件不同,根級別/ META-INF目錄不在應用程序類路徑上。 您不能使用ClassLoader獲取此目錄中的資源。 然而,/ WEB-INF / classes / META-INF位於類路徑上。 您可以將所需的任何應用程序資源放在此目錄中,並且可以通過ClassLoader訪問它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.