-
Java的部署:
- 本机: 整个程序都在用户的计算机上以独立,可携的GUI执行,并以可执行的Jar来部署
- 两者之间的组合:应用程序被分散成在用户本地系统运行的客户端,连接到执行应用程序服务的服务器部分
- 远程:整个应用程序都在服务器端执行,客户端通过非Java形式,可能是浏览器的装置来存取
-
使用-d选项,将源代码与类文件分离
-
大部分完全在本机的Java应用程序都是以可执行的JAR来部署的
-
创建可执行的JAR:
- 确定所有的类文件都在classes目录下
- 创建manifest.txt文件来描述哪个类带有main()方法,文件带有Main-Class:文件名,放在classes目录下
- 执行jar工具来创建带有类以及manifest的JAR文件
-
Java虚拟机能够从JAR中载入类,并调用该类的main()方法。事实上,整个应用程序都可以包在JAR中
-
-jar 标识告诉Java虚拟机所给的是个JAR
-
包可以防止名称冲突,但这只会在包名称保证不会重复的情况下起作用,最好的方式实在前面加上domain名称
-
反向使用domain的包名称
-
把类包进包中:
- 选择包名称
- 在类中加入包指令 :必须是程序源文件的第一个语句,每个原始文件只能有一个包指令
- 设定相对应的目录结构
-
加上-d选项来编译 *.java 是编译此目录下所有的.java文件
-
-d选项会要求编译器将编译结果根据包的结构来建立目录并输出,如果目录还没有建好,编译器会自动地处理这些工作
-
一旦类被包进包中,你就不能用“简写”的名称来调用它
-
你必须在命令栏指定要执行main()的类的完整名称,这包括包的结构
-
当你把类包进包中,包目录结构必须在JAR中!你不能只是把类装到JAR里面,还必须确定目录结构没有多少往上走。包的第一层必须是JAR的第一层目录。
-
条列和解压的jar命令
-
xf会把.jar解开,你会在当前目录下看到META-JNF和com目录
-
用户能通过点选网页上的某个连接来启动Java Web Start 的应用程序。一旦程序下载后,它就能独立于浏览器之外来执行。事实上,Java Web Start 应用程序只不过是通过网络来发布的应用程序而已
-
Java Web Start 的工作方式
- 客户端点击某个网页上JWS应用程序的链接(.jnlp)
- Web服务器收到请求发出.jnlp文件(不是JAR)给客户端的浏览器
- 浏览器启动Java Web Start,JWS的helper app读取.jnlp文件,然后向服务器请求MyApp.jar
- Web服务器发送.jar文件
- JWS取得JAR并调用指定的main()来启动应用程序
-
创建与部署Java Web Start的步骤:
- 将程序制作成可执行的JAR
- 编写.jnlp文件
- 把.jnlp与JAR文件放到Web服务器
- 对Web服务器设定新的mime类型application/x-java-jnlp-file
- 设定网页连接到.jnlp文件
-
applet无法独立与浏览器之外