Updated 2014/04/09 P581--P615
如何组织、包装与部署Java程序。
部署的选择
本机: Executable Jar
两者之间的结合: Web Start, RMI app
远程
将源代码与类文件分离(javac 的-d选项指定class存放目录)。-d选项会要求编译器将编译结果根据包的结构来建立目录并输出,如果目录还没有建好,编译器会自动处理这些工作。
标准的组织化结构是创建出项目目录,然后在其下建立source和classes目录。
创建可执行的JAR
1. 确定所有的类文件都在classes目录下
2. 创建manifest.txt来描述哪个类带有main()方法 (Main-Class: MyApp)
3. 执行jar工具来创建带有所有类以及manifest的JAR文件
jar –cvmf manifest.txt app1.jar *.class
或jar –cvmf manifest.txt app1.jar MyApp.class
执行JAR
%cd Myproject/classes //Java虚拟机必须要能找到JAR,所以它必须在classpath下。让JAR
//曝光的最好方式是把它放在工作目录下。
%java –jar app1.jar
1.将类以包来组织,并在前面加上域名称以防止命名冲突。
2.要让编译过的类可以放在正确的包目录结构中,使用-d编译标识:
%cd source
%javac –d ../classes com/wickedlysmart/Foo .
3.切换到classes目录然后指定完整的类名来执行程序:
%java com.wickedlysmart.Foo
4.可以把类包进JAR中,它的格式是根据pkzip制作的。
5.将描述哪个类带有main()的manifest包进JAR中可以制作出可执行的AR文件。manifest文件是个带有像下面这样设定的文本文件,最后要换行才能保证正确:
Main-Classes: com.wickedlysmart.Foo
6.用下面的命令格式来创建JAR文件:
jar –cvfm manifest.txt MyJar.jar com
7.JAR中的结构必须完全的符合包的目录结构
8.以下面的命令格式来执行JAR: java –jar MyJar.jar
Java Web Start
将程序制作成可执行的JAR
编写.jnip文件
把.jnip与JAR文件放到Web服务器
对Web服务器设定新的mime类型
设定网页链接到.jnip文件
对JWS应用程序而言,一旦从网站上面下载后,用户不必通过浏览器就可以离线执行程序
Java远程调用(RMI)技术,Servlet,Enterprise Java Bean(EJB), Jini ,以及EJB与Jini如何运用RMI
一般来说,对象的方法调用都是在相同的Java虚拟机上面进行的。
如果要调用不同机器上的对象的方法呢?
………….(因为Jar后面的东西目前没涉及到,没有继续读下去)