以前做web開發使用MyEclipse,后來轉而使用Eclipse.在打war包部署的時候,遇見了問題.我沒有在Eclipse的菜單中找到可以打war的選擇也沒有向導,只能退而求其次選擇使用命令方式來進行打包部署.
步驟如下:
1.找到需要打包的工程所在目錄,以我為例:需要打包的web工程名稱smsplate,目錄:D:\Users\jiangsh\workspace_eclipse
2.通過cmd到達上述目錄,執行命令:jar cvf smsplate.war */.
可是我在執行的過程中提示了一個錯誤,如下圖:
看到錯誤我直接郁悶了....
下面的老兄說的很在理:
原文地址:http://blog.sina.com.cn/s/blog_4cbc6fdd0100fojv.html
jar包和war包的區別:
war是一個web模塊,其中需要包括WEB-INF,是可以直接運行的WEB模塊。而jar一般只是包括一些class文件,在聲明了Main_class之后是可以用java命令運行的.
它們都是壓縮的包,拿Tomcat來說,將war文件包放置它的\webapps\目錄下,啟動Tomcat,這個包可以自動進行解壓,也就是你的web目錄,相當於發布了。
war包:是做好一個web應用后,通常是網站,打成包部署到容器中。
jar包:通常是開發時要引用通用類,打成包便於存放管理。
ear包:企業級應用,通常是EJB打成ear包。
所有的包都是用jar打的,只不過目標文件的擴展名不一樣。
WAR是Sun提出的一種Web應用程序格式,與JAR類似,也是許多文件的一個壓縮包。這個包中的文件按一定目錄結構來組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會有一個WEB-INF目錄,這個目錄很重要。通常在WEB-INF目錄下有一個web.xml文件和一個classes目錄,web.xml是這個應用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類(如JavaBean)。通常這些所依賴的類也可以打包成JAR放到WEB-INF下的lib目錄下,當然也可以放到系統的CLASSPATH中,但那樣移植和管理起來不方便.