怎样安装Java se 6 在Mac里

Python014

怎样安装Java se 6 在Mac里,第1张

下载mac版专用的jdk1.7,地址如下:http://jdk7.java.net/macportpreview/,里面有最新版的(不过还是测试版),版本更新频率每两周大概会release一个build,我安装的版本是b223(更新一下,最新版本是b227了,已经不是OpenJDK了)。

下好之后,双击dmg打开,然后简单的来一个拖拽(这个就不废话了,不会拽的面壁去)。

改变jvm首选顺序,在Spotlight里搜索[Java Preferences](中文版应该是JAVA首选项么?),应该能看到已经有的几个虚拟机,把JAVA SE 7拖拽到最上面,就可以了(比如我拖拽的是64位版本的)。

确认java使用的版本:开一个终端,输入java -version,确认jvm的版本号是jdk1.7.0。

下面的操作是如何改变eclipse默认的jre,首先打开eclipse(如果你改了jvm的顺序,让1.7在最上面,又没在eclipse的配置里写死jvm的启动位置,那么应该就已经用jdk1.7启动了)。

打开首选项->Java->Installed JREs,看到右侧的JRE列表,如果已经使用是默认的jdk1.6的话,点Add,选择MacOS X VM,在路径的地方指向到jdk7的安装位置,就可以了。

话没说完,如果你找不到这该死的jdk1.7的安装位置在哪里,可以考虑粘下这个地址(这个是我系统里的位置,我猜测大家的都应该差不多哈)。/Library/Java/JavaVirtualMachines/JDK 1.7.0 Developer Preview.jdk/Contents/Home

正确的话,下面会识别出一堆jar包位置,然后给这一坨jre起个帅气的名字。

如果想启用jdk1.7的语法,必须要eclipse版本在3.8/4.2以上(目前我写这篇博客的时候,4.2已经达到了Milestone4),然后可以在workspace/project属性里把编译等级调整到1.7,就能享受jdk1.7的语言特性了(不过前提是,使用的jdk以及jre必须都是jdk1.7以上才行)。

希望这篇啰嗦的文章对大家有帮助。

更新信息

支持Java7语法的eclipse版本是从3.7开始的,具体见如下地址:http://wiki.eclipse.org/JDT/Eclipse_Java_7_Support_(BETA)

Mac下Eclipse默认还是会使用系统的jdk1.6启动,好像强制修改eclipse.ini的vm参数是无效的,必须修改Eclipse.app/Content/Info.plist,打开看里面有注释写着呢。不过我这里eclipse4.2M4修改后依然无效。

有时候会出现部分应用还使用旧的jdk1.6的情况出现,例如maven有时候就会坚持用旧版的,这时候只好找个地方导出下JAVA_HOME变量了。改到jdk1.7的Home目录即可。

jdk1.7 macport从b11开始合并了分支代码,开始已经直接使用安装程序安装了,相应安装到的路径也改变了,是这个:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home 。update on 2012-2-12

jdk1.7u6 b09开始,bundle name变更,这样就可以在安装新版本的同时保留旧版本了。当然了,路径也会变化,变成了这个样子:/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk,其中06是update版本号。简易大家可以做一个软连接,cd /Library/Java/JavaVirtualMachinesln -s jdk1.7.0_06.jdk 1.7.0.jdk,这样就不会受到版本升级的影响了(这样eclipse里设置的JRE路径就用软连接里的路径就好了)。

本Guide利用Eclipse以及Ant建立一个简单的Web Service,以演示Web Service的基本开发过程:

1.系统条件:

Eclipse Java EE IDE for Web Developers

Java SE 6

Windows XP

2.基本环境搭建:

1)Java SE6 JDK的安装:下载Java SE6 JDK,双击,安装默认选项进行安装即可。

2)Eclipse的安装与配置:

安装时直接解压。

配置处有两点,Window>Preferences>Java>Installed JREs确保如下设置:

安装路径可能略有不同。

Window>Preferences>Java>Compiler 确保如下设置:

3.建立Server端工程和相关包与类:

创建一个Java Project,命名为wsServerHelloWorld:

在这个项目下建立包:org.gnuhpc.wsServer

在这个包下边建立类:SayHello

在SayHello.java文件中输入以下代码:

package org.gnuhpc.wsServer

import javax.jws.WebService

@WebService

public class SayHello {

private static final String SALUTATION = "Hello"

public String getGreeting(String name) {

return SALUTATION + " " + name

}

}

其中注意到@WebService ,这个称作annotation或者metadata,Java SE 5中的Web Services Metadata Specification引入的。Java SE 6中对于Web Services规范的升级以及JAX-WS(Java API for XML Web Services)2.0规范,这些升级使得我们Web Services的创建和调用变得更加容易。使用这些新功能,我们可以仅仅使用简单的Annotations注释从一个Java类创建Web Services。开发者将其类和方法之前用该annotations指定,类告诉runtime engine以Web Service的方式和操作来使能该类和方法。这个annotations可以产生一个可布署的Web Service,是一个WSDL映射annotations,将Java源代码与代表Web Service的WSDL元素连接在了一起。

4.使用Ant产生Server端代码:

首先在项目中新建一个文件:build.xml,然后使用OpenWith>AntEditor打开,输入以下脚本代码:

<project default="wsgen">

<target name="wsgen">

<exec executable="wsgen">

<arg line="-cp ./bin -keep -s ./src -d ./bin

org.gnuhpc.wsServer.SayHello"/>

</exec>

</target>

</project>

default指定了默认执行的Target为wsgen,wsgen可以创建一个能够使用WebService的类,它生成所有用于WebService发布的源代码文件和经过编译过的二进制类文件。它还生成WSDL和符合规范的该类的WebService。

Target名称为wsgen,具体执行的命令的参数:

-cp 为类路径

-keep后产生的java文件

-s 产生的源文件放在哪

-d 产生的输出问价放在哪

然后使用Ant Build选项运行:

在成功执行的提示后,我们刷新一下Project

我们在Project区域可以看到,结果如下:

5.分布Web Service

org.gnuhpc.wsServer下建立一个类RunService:

package org.gnuhpc.wsServer

import javax.xml.ws.Endpoint

public class RunService {

/**

*@paramargs

*/

public static void main(String[] args) {

System.out.println("SayHello Web Service started.")

Endpoint.publish("http://localhost:8080/wsServerExample" ,

new SayHello())

}

}

运行Run As>Java Application。我们得到结果,说明这个web service的Server端已经启动。

6.查看WSDL:

Window>Show View>Other>General>Internal Web Browser,在其中输入:http://localhost:8080/wsServerExample?wsdl

你可以看看到底WSDL都记录了哪些信息。看完后可以停止该Server。

7.监测Server

我们创建完Server可以用过Eclipse Web Services Explorer监测Server,

Window>Open Perspective>Other >JavaEE

打开Eclipse Web Services Explorer

点击右上角的WSDL Page按钮:

单击WSDL Main,在URL中输入:http://localhost:8080/wsServerExample?wsdl 按Go按钮后出现一下视图:

我们可以触发一个Web Service操作:点击getGreetings,添加一个参数,比如gnuhpc,然后点击Go按钮:

8.创建Client端 工程和相关包与类:

创建一个Java Project,命名为wsClientHelloWorld,在这个项目下建立包:org.gnuhpc.wsClient

9.使用Ant产生Client代码框架:

编写Web service时,可以使用工具来利用WSDL生成进行调用的客户端桩;或者也可以使用底层API来手动编写Web service。前者方便,后者灵活,现在我们通过前者做说明:

新建文件build.xml

New>File>build.xml

<project default="wsimport">

<target name="wsimport">

<exec executable="wsimport">

<arg line="-keep -s ./src -p org.gnuhpc.wsClient

-d ./bin http://localhost:8080/wsServerExample?wsdl"/>

</exec>

</target>

</project>

注意:wsgen 支持从 Java class 创建 Web services,wsimport 支持从 WSDL 创建 Web services,分别对应于 JAX-RPC 方式下的 Java2WSDL 和 WSDL2Java。要根据发布的WSDL进行创建,这也就是为什么要先运行RunServer的原因了。

运行Server的RunService : Run As>Java Application>

运行该Ant脚本,产生Client代码:Run As>Ant Build

运行成功的提示如下:

生成的代码如下:

这一步读取WSDL并生成客户端桩。这些桩是将为我们的代码所用的Java类和接口。这些桩给服务器端功能提供了一个客户端接口。例如,如果我们的服务器提供一个Maths服务,该服务带有一个叫做add的方法。我们的客户端代码将调用桩上的一个方法,而桩实现将对该方法使用参数封装,把Java方法调用变为Webservice请求。这个请求将基于HTTP发送给服务器,而且将使用SOAP作为RPC协议。监听服务器接收该SOAP消息,然后(十有八九)将其转换为服务器处的一次方法调用。

安装方法如下:

下载JAVA JDK SE 6,可以去下面的地址下载:

http://www.oracle.com/index.html

进入下载的文件夹并双击安装程序开始安装:

3.  单击“接受”。

4.选择程序功能和安装路径,单击“下一步”。出现新的窗体,单击“下一步”安装jre。

然后单击“完成”。

5设置环境变量

在系统变量中设置PATH环境变量。

变量名:Path

变量值:D:\Program Files\Java\jdk1.6.0_10\binD:\Program Files\Java\jdk1.6.0_10\jre\bin(是在原有的值上添加)

这样就完成了安装。