转载:java打包详解

 java打包的目的实际上就是压宿,可以打.jar ,.war 和.ear包下面就几个例子说明如下:
1.打.jar文件的主要目的是将许多class文件目录压宿,打成一个文件,便于管理和转移,下载等
a.打普通的jar文件 命令如下不做赘述,网上很多
jar -cvf jxc_manager.jar com/ resources/ org/
b.打可执行的jar文件 ,需要指定一下MANIFEST.MF文件中Main-Class选项
如:
Manifest-Version: 1.0
Created-By: 1.4.2 (Sun Microsystems Inc.)
Main-Class: com.jspdev.ch5.Hello
打包时命令如下:
jar -cvfm test.jar MANIFEST.MF com/
2.打.war 文件,war文件专门用于web应用的
首先创建jspdev文件夹,然后创建WEB-INF 文件夹,将class包目录考入,然后创建web.xml文件
其中包含主要内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns=" http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation=" http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">
  <display-name> testname</display-name>
  <description>
     testname
  </description>
</web-app>
所使用的servlet和filter等可以陆续加进来。
jsp文件目录和WEB-INF同级。
执行命令:jar -cvf jspdev.war * 生成jspdev.war文件
将war拷贝至webapps目录下,来看最后一步,打开tomcat的目录conf中的server.xml,在
      <Host name="localhost" debug="0" appBase="webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
</Host>之间加入:
<Context path="/jspdev" docBase="jspdev.war" debug="0"
reloadable="true"/>
运行它,启动tomcat,后在浏览器中输入 http://localhost:8080/jspdev/jsp/ch5/calculate.jsp,呵呵,这是俺刚入道的时候学习代码,(现在发包部署有新的收获,呵呵)
3.将war文件打成.ear包,
war文件打成ear文件目前俺只知道用在websphere中部署应用,war文件也可以在websphere中部署,区别可能是ear更完善,上下文根什么都不用设置,一路下去就可以部署好,
上面的jspdev.war文件放入test文件夹,然后创建META-INF文件夹,进入meta-inf文件夹,为ear文件编写application.xml文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<application id="Application_ID" version="1.4" xmlns=" http://java.sun.com/xml/ns/j2ee" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">
    <display-name>JSPdev</display-name>
    <module id="WebModule_1135266802925">
     <web>
      <web-uri>jspdev.war</web-uri>
      <context-root>/jspdev</context-root>
     </web>
    </module>
</application>
然后在test目录下执行命令:jar -cvf jspdev.ear * 生成jspdev.ear文件,
将jspdev.ear 拿到Websphere 发布,会出来上面一样的效果。
结束
另外websphere 有专门的打ear的工具,ApplicationServerToolKits,对于企业级用户最好使用工具打包,更稳定,健壮。
另外一年多没玩tomcat了,遇到了一个以前遇到的错误,一时忘记怎么搞了,害的我花了好长时间找原来的学习笔记,幸亏找到了,所以把错误和解决办法
记在这供以后查找:
JAVA_HOME does not point to the JDK 解决方法
root cause
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
解决方法:
打开Configure Tomcat,选中JAVA选项,改动Java Classpath
在c:/Tomcat/bin/bootstrap.jar
后添加%JAVA_HOME%/lib/tools.jar就行了,如果%JAVA_HOME%不起作用,那就直接设定绝对路径,比如C:/j2sdk1.4.2/lib/tools.jar

你可能感兴趣的:(java,tomcat,jar,application,websphere,encoding)