![Java从入门到精通(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/942/728942/b_728942.jpg)
第2章 流行的Java开发工具—Eclipse
本章视频教学录像:1 小时20 分钟
古语有言:“工欲善其事,必先利其器。”要学习和使用Java语言进行程序开发,就必须选择一种功能强大、使用方便且能够辅助程序开发的IDE集成开发工具,而Eclipse就是目前最为流行的Java语言辅助开发工具。它具有强大的代码辅助功能,能够帮助程序开发人员自动完成输入语法、补全文字、修正代码等操作,能够大量减轻程序开发人员的时间和精力。通过本章的学习,读者能够初步了解Eclipse开发工具,并且能够使用它完成程序的开发工作。
本章要点(已掌握的在方框中打钩)
□ Eclipse概述
□ 掌握Eclipse 的安装、设置与启动方法
□ 熟悉Eclipse 的开发环境
□ 使用Eclipse 创建 Java 程序
□ 在 Eclipse 中调试 Java 程序
2.1 认识Eclipse开发工具
本节主要讲解Eclipse工具安装、配置以及工作台等内容。
本节视频教学录像:44分钟
2.1.1 Eclipse概述
Eclipse是IBM花巨资开发的IDE集成开发环境(Integrated Development Environment),其前身是IBM的Visual Age for Java(VA4J)。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境,是可扩展的体系结构,可以集成不同软件开发供应商开发的产品,将他们开发的工具和组件加入到Eclipse平台中。另外Eclipse还附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。
随Java应用的日益广泛,各大主要软件供应商都参与到Eclipse架构开发中,使得Eclipse的插件数量与日增多。Eclipse为程序开发人员提供了优秀的Java程序开发环境。
2.1.2 Eclipse的安装、设置与启动
Eclipse的安装非常简单,仅需对下载后的压缩文件进行解压缩即可完成操作。
1. 安装Eclipse开发工具
⑴ 笔者使用的Eclispe的版本是4.4,读者可在Eclispe的官方网址:http://www.eclipse. org/downloads/,下载该版本。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0065_0001.jpg?sign=1734438131-vipe6OqQi6cpCSyx9o9w75j95oVxCbdx-0-af6b1d54e85c914897380aa1c83db3ac)
注意
操作系统的位数是指其所依赖的指令集位数,目前主要有32位和64位这两大类指令集。32位操作系统只能支持4GB以内的内存。64位操作系统可支持4GB以上的内存。为了保证应用软件的性能和兼容性,建议读者安装与操作系统位数相匹配的软件版本。
⑵ 根据你的操作系统类型下载对应版本的Eclipse,笔者的操作系统为64位Windows 7,所以单击上图所示的“Windows 64 Bit”链接地址,下载eclipse-standard-luna-R-win32-x86_64.zip,事实上,64位的操作系统也是可以安装32位Eclipse的,因为操作系统通常保证向前兼容。如果读者的操作系统是32位的,就单击“Windows 32 Bit”,下载对应的32位Eclipse。然后用WinRAR等解压缩软件,将该zip文件压缩包解压到本地。32位的操作系统是不能安装64位Eclipse的。下载页面会自动跳转到用户最近的Eclipse镜像下载点,下图所示的为中国科技大学的镜像地址。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0066_0001.jpg?sign=1734438131-yGkxvUASQjsZ7fMOA4nlosUEsHJGN079-0-64deeae0c7def0172b7a6fcf7ec58ac7)
注意
在安装Eclipse时,除了要考虑与操作系统的位数兼容,还要保证和Java的JDK位数一致(JDK的下载安装,我们已经在第一章讲到)。
⑶ 为了便于管理,读者可以将解压缩后的Eclipse文件夹复制到任意指定的文件夹中。例如,“D:\Development\Java”文件夹,这里的路径及文件夹名仅仅是为了举例说明,读者可根据自己的需要选择安装路径和创建文件夹,如“C:\我的开发\Java”都是合法可行的。
2. 启动Eclipse
接下来可以启动Eclipse。具体步骤如下。
⑴ Eclipse的启动很简单,进入Eclispe文件夹(如路径D:\Development\Java\Eclipse)。由于Eclipse是绿色软件,无需安装,双击运行eclipse.exe可执行文件,便可启动英文版的Eclipse开发工具,如下图所示。为了更方便的操作,这里可以将eclipse.exe发送到桌面快捷方式或固定到任务栏。默认的Eclipse版本是英文界面的,如果想安装其他语言版本(如中文)的Eclipse,请参阅第3步的设置。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0066_0002.jpg?sign=1734438131-l50ixVnIE15VDQS98oxMCXzTLrINNGkJ-0-11f41e7fd143dc9a8a43067cf0f7bf7d)
⑵ Eclipse启动后,Eclipse首先让用户选择一个工作空间(WorkSpace)。
注意
工作空间”实际上是一个存放Eclipse建立的项目的目录,包括项目源代码、图片等,以及一些用户有关Eclipse个性化的设置,如用于语法高亮显示的颜色、字体大小及日志等。一般来说,不同的Java项目,如果设置不同,需要使用不同的工作空间来彼此区分。如果想备份自己的软件项目,只要复制该目录即可。
在弹出的【Workspace Launcher】对话框的【Workspace】在文本框中输入你指定的路径,如“D:\Development\Java\workspace”,然后单击【确定】按钮。如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0067_0001.jpg?sign=1734438131-8MIV0TSj0ReOeWdtV0pv5JNFWPmkGR5u-0-cbb7f648ba29553d346ba71a3a1930c7)
该对话框用于设置Eclipse的工作空间,本书所使用的Eclipse工作空间为D:\Development\Java\workspace。
注意
Eclipse每次启动都会出现设置工作空间的对话框,如果选中【Use this as the default and do not ask again】复选框,就可以将当前的工作空间设置为默认的工作空间,这样再启动Eclipse时就不会出现此对话框了。
单击【OK】按钮,系统将出现Eclipse的欢迎界面,其中包含【Overview】【Tutorials】【Samples】和【What's New】以及工作台相关按钮和菜单栏等,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0067_0002.jpg?sign=1734438131-lBvr5jnYrdKAy7NMk7Jmn24EPl7EIcdQ-0-ed1d8e56e5acafac39de103660cd31a2)
3. Eclipse的国际化
Eclipse默认安装的语言版本是英文。从初学者的角度考虑,如果集成开发工具是中文版的,读者在学习和使用的过程中会轻松很多。另外一点就是,读者可以方便地查阅中文教程和帮助信息。为此,读者可到Eclipse网站上下载多国语言包,从而实现Eclipse操作界面的国际化,进而选择中文语言来显示Eclipse程序界面。
在Eclipse国际化之前,首先要查看Eclipse的版本号:首先打开Eclipse软件,在菜单【Help】 【About Eclipse】,查看当前的Eclipse版本号,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0067_0004.jpg?sign=1734438131-9Kvh1cmOdsJOq04t7flkPxuuFVYgFiva-0-220019051eeea2e81bb4f4a4e31fa687)
由上图方框标识的部分可以看出, Eclipse 4.4.0所对应的版本名称为Luna。在选择多国语言包的地址时一定要找到与你Eclipse版本相匹配的地址。目前官方给出的下载地址是以版本代号给出的,如本书使用的是Luna,另外还有Kepler、Juno、Indigo等早期版本。
注意
Eclipse除了用数字来标识版本号外,还给每个发行版本取了一个著名的人或物名,例如Eclipse 3.7 版本代号 Indigo (靛青)、Eclipse 4.2 版本代号 Juno(朱诺)、Eclipse 4.3 版本代号 Kepler(开普勒)及Eclipse 4.4 Luna(撸哪)等。
然后,到官方网站(http://www.eclipse.org/babel/downloads.php)找到与所安装的Eclipse版本相匹配的多国语言包:Babel Language Pack Update Site for Luna。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0068_0001.jpg?sign=1734438131-52UOnZ12jLNrhusliH9y2w2hBY4MIrET-0-384c53e7393b2f956b7b28353bb281e1)
下面简要介绍两种相对简单的安装方式:在线安装及下载语言包安装。
1. 在线安装汉化
⑴ 在Eclipse的菜单栏【Help】中,单击【Install New Software】选项,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0068_0002.jpg?sign=1734438131-STz1KGHl8ZoTO96v1WIEu3he3uuAQDPI-0-751ae1fcedd04e08f2358dfef0a30011)
之后,会弹出【Install】对话框,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0068_0003.jpg?sign=1734438131-EMTMDlFwUQzBkSl4VkIOOk0LOO0bs3t0-0-5b98fe686bec5237b34f3b710f934885)
在【Install】对话框中,单击右上角的Add(添加)按钮,在弹出的对话框【Add Repository】中,将【Name】对应的文本框中,输入“Language”作为名字,在【Location】对应的文本框中输入:http://download.eclipse.org/technology/babel/update-site/R0.12.0/luna,然后单击【OK】按钮,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0069_0001.jpg?sign=1734438131-O4vqQwvLv4d9dZ8nILB2Cpjx4hCKVOU3-0-138cf1f4821e7851c33e59c16cdf5785)
需要说明的是,上述链接地址是多国语言包的在线安装的解析地址,直接在浏览器地址栏输入这个链接地址是无效的。此外,由于国内用户网络存在不稳定性,这样可能会导致出现无法有效解析上述国外网址的现象,这时需要读者耐心地多尝试几次。若想直接下载多国语言包文件,需要单击“Zipped p2 repository (84 MB)”对应的链接。
⑵ 然后会出现“Pending”字样,这是表示让等待一会,即将就绪,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0069_0002.jpg?sign=1734438131-0A0CLeORmtloIylKH1JMrdT1rm0GChh5-0-737813971ee0258f764cdcafc7002170)
⑶ 之后,在出现的插件列表中找到Babel Language Packs in Chinese (Simplified),其中Chinese (Simplified)字样表示的是简体中文版本,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0069_0003.jpg?sign=1734438131-632EMih4Qc6Mwbm0SVwWKrRP0NLV01UY-0-01f08d3acaaab94b4de2222c09f6024d)
⑷ 在它前面的复选框中打钩。然后单击【Next】按钮,出现这个语言包的安装细节【Install Details】,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0070_0001.jpg?sign=1734438131-O4rAFBh6TNRlJfxHUGnW396XxKNSwCz1-0-0b464a02ca1b91b41310285ef78ca2ba)
⑸ 然后单击【Next】按钮,出现【Review Licences】,若想使用这个语言包,必须接收这个软件安装许可证协议,该协议里包含了免责条款及对用户的权利限制。选择“I accept the terms of the liences agrement”,单击【Finish】完成,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0070_0002.jpg?sign=1734438131-s5E6iMsXojmqOMlFyHgWtpO7v451oAGm-0-9c7295ac1c6374e3968d4e51b3cf8554)
⑹ 然后等待Eclipse下载对应的语言包,这个过程需要一定的时间,读者也可以让下载过程运行在后台(Run in Backgroud),如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0071_0001.jpg?sign=1734438131-wYK2iZZmHesZWhdrc1gie7P5QLCjSlWr-0-04b15e25e1f21e0e610e4843bf3a8c74)
⑺ 在安装过程中可能会出现安全警告(Security Warning),读者单击【OK】按钮即可,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0071_0002.jpg?sign=1734438131-E5wgBssSNXhXHWh1OUMHf4EU8lmjDr9t-0-2f1bf5fc3598b5d6f829f5da3f3af3b0)
⑻ 最后待安装完成后,重启Eclipse,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0071_0003.jpg?sign=1734438131-KoBc5v6t1kkvzRVl4BDoZ0t8DSV2F01p-0-a2a5ca17051787984f2d0f760df17e86)
⑼ 按照以上步骤操作,即可实现Eclipse从英文版向中文版的切换,如下图所示。本质上,Eclipse的内核还是英文版的,其所谓的汉化并不完全,只对关键的地方(如菜单栏)进行了中文汉化,仍有很多文档仅提供英文版。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0071_0004.jpg?sign=1734438131-SQ1Q4qqbrgeUEJrgvXuJwEzgpnQGt2ag-0-69e8075aae29d695a963bb00cc68e77b)
我们推荐读者在熟悉Eclipse使用后,切换到英文环境,这是因为有关Eclipse的最新、最权威文档及Eclipse使用过程中输出的调试信息很多都是英文的,任何语言经过一层“翻译”之后,信息都会在某种程度上有所损失。
2. 下载语言包汉化
到官方网站(http://www.eclipse.org/babel/downloads.php)找到与所安装的Eclipse版本相匹配的多国语言包:Babel Language Pack Update Site for Luna。
⑴ 在语言包下载页面“Babel Language Pack Zips”单击Luna键,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0072_0001.jpg?sign=1734438131-wwxQ9h5v1qQpRP1FpdsQ3c1uLhlxFC5n-0-a68faa65b623b73a1e829c29c1e56761)
⑵ 选择中文简体,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0072_0002.jpg?sign=1734438131-2pgdd908woGjh8vuMIEFZPQS2daXaWqV-0-58775ff85d33186254e0ded098a81964)
⑶ 单击“BabelLanguagePack-datatools-zh_4.4.0.v20140623020002.zip (87.72%)”,下载该汉化包。前面括号里的百分比%为汉化比例,由于Eclipse的汉化工作是志愿者义务在空闲时间翻译的,所以通常汉化工作不像商业软件那么彻底,随着时间的流逝,汉化比例会越来越高。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0072_0003.jpg?sign=1734438131-lpJaJmqRnEyM1fwXdmFwqqsIjFKRegWw-0-d9681a6f3256829c21c53a1115e3f969)
⑷ 在镜像网站下载语言包。
下载页面会自动跳转到距离用户最近的镜像站点,单击“[China] Beijing Institute of Technology (http)”下载语言包。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0072_0004.jpg?sign=1734438131-VhTEhIpv2lXT1uJWlTXcOz15dp6Ree5O-0-95cc7328133b6835cf5534edce48a237)
将汉化包下载好以后,解压缩,目录结构如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0072_0005.jpg?sign=1734438131-iYKH7BCuwSADi2zyjAg2w9CIvAjpkwxd-0-029dcca767c7004d43c4d691da00c556)
然后把features和plugins这两个文件夹复制到eclipse安装目录(如D:\Development\Java\Eclipse\)下面的dropins目录(注意,不是plugins目录),dropins文件夹原本是空文件夹,复制之后如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0073_0001.jpg?sign=1734438131-NSrQxSbcqN2PxtEF8f5c70dfTR8LJiNd-0-099dea2cfbd855a1d8c7f12aa4c1e844)
然后重启Eclipse,就已经成功汉化了,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0073_0002.jpg?sign=1734438131-jdYRnuiZlL2hqn5Gu3057vX5JvMrqtMW-0-88bc14f0e714b3876e0f5121b2aa9df6)
2.1.3 Eclipse 工作台
在Eclipse的欢迎界面中,单击【工作台】按钮或者关闭【欢迎】的界面窗口,将显示出Eclipse的工作台,如下图所示。Eclipse工作台是程序人员开发以及调试程序的主要场所。
Eclipse的一大优势就在于它有非常多优秀的插件(Plug-in),这些插件采用无缝衔接的方式集成到该工作台中,这就使得Eclipse在运行系统之上可以实现各种插件带来的“附加”功能。拥有合适的Eclipse插件是非常重要的,因为一个好的插件可以大大的提高我们的工作效率,提高代码质量。例如, FindBugs插件可以帮助程序员更容易找到Java代码中的缺陷(Bug)。再例如,Checkstyle插件可以集成到Eclipse IDE中去,它能确保Java代码遵循标准代码样式。当然,作为一个开发平台,它也可在这个工作台中开发各种插件,然后安装在Eclipse之中,为己所用。
Eclipse 工作台主要有标题栏、菜单栏、工具栏、编辑器和各种视图(大纲视图、调试视图、团队视图)等,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0074_0001.jpg?sign=1734438131-b4E98XA1BtRh4Q1Jy4p0qJNGHdmhmwi3-0-0a754a73278abef474a6ab43f05f8145)
项目资源管理器主要用于显示项目中的文件列表。文件编辑区用于显示当前编辑的文本(如Java源代码)。当文件被加入到项目中后,就可在资源浏览器或Java包浏览窗口中双击指定文件,Eclipse会试图打开这个文件,其中Eclipse内嵌的编辑器能缺省打开一些文件,如*.java,*.txt等。控制台(Console)用来显示程序调试信息或程序运行结果。
2.1.4 Eclipse 菜单栏
Eclipse的菜单栏中包含了Eclipse的基本命令,主要有【文件】、【编辑】、【源码】、【重构】等10个子菜单,下面分别给予简要介绍。
1.【文件】菜单
文件(File)菜单用于新项目的创建、保存以及关闭等操作。该菜单主要包含【新建】、【保存】、【关闭】、【打印】等,除此之外,还包括【切换工作空间】、【导入】及【导出】工作空间资源以及结束工作空间本身等命令,如下图所示。
2.【编辑】菜单
编辑(Edit)菜单主要用于辅助程序代码设计工作,如代码的【复制】、【剪切】、【粘贴】及【查找】等,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0075_0001.jpg?sign=1734438131-IwQqGaXS5piSctwDLvRdrh4RhBIVn8Jl-0-e389fe64634b49470c55c37d1f8c0b4d)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0075_0002.jpg?sign=1734438131-qBwr0smrU2FPLgQnFZ3d7vf49savsaEt-0-7545eceb875d6f6f47553de8eca488eb)
3.【源码】菜单
源码(Source)菜单中所包含的命令都是和代码编写相关的,主要用于源码的【注释】【、缩进】【、格式化】等工作,如下图所示。
4.【重构】菜单
重构(Refactor)菜单也可以在一些视图的快速菜单与Java编辑器中找到。它是Eclipse最为关键的菜单,主要包括对项目重构的相关命令,对本菜单需要重点掌握,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0075_0003.jpg?sign=1734438131-ATsIozdbNPIieGlaJxytaps91BPcMtN3-0-cd0ce659822b57118b3fc149831e34c9)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0075_0004.jpg?sign=1734438131-XltwB5c2E2xWXcqMpNeWWat8L5qp6ST6-0-5fd347894bbf4d1bb00b25d7b82b7e2a)
在Eclipse中,重构是指在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。
具体举例来说,如果类放错了位置,可以通过【重构】将其前移至另一个包(package)里面。再例如,如果类、方法和变量等名称错了,可将这些名称进行改名。但是,这些名称的修改,可能会涉及整个项目的多个源码文件,“牵一发而动全身”,凡是涉及到这些名称的所有代码必须全部修改,否则局部修改后的代码可能难以使用。而在多个文件中,利用人工的方式逐一修改这些名称,工作量很大,而且极易出错。【重构】菜单下的命令可以方便地帮助用户完成这些功能。
提示
重构(Refactoring)从其英文构词法,就可以看出它是让某事物重新(re)回工厂(factory)加工。该概念最早源自Martin Fowler的著作《重构:改善既有代码的设计》。对这个软件设计理念感兴趣的读者可参阅此书。
5.【浏览】菜单
浏览(Navigate)可以寻找及导览工作空间中显示的资源及其他成品。它包含了一些浏览的动作,例如 【转至】、【打开类型】、【打开声明】及【显示位置】等,如下图所示。使用户既可以浏览,也可以仔细查看代码。例如,一个常见的可以添加到动作集的命令的例子是【浏览】【打开类型】。该命令用来打开当前窗口中不可见的某种类型编辑器,这是一种横向导航的方式。
6.【搜索】菜单
搜索(Search)包括了丰富的查找命令,包括【Java】、【引用】、【声明】和【文件中出现的位置】等。如下图所示。搜索功能是 Eclipse 中一个非常重要的特性,它提供了丰富的查找结果(如用户可以输入“正确表达式”或任意字符串,指定查找范围和匹配选项等), 以及方便的定位,并可以查看查找历史记录和使用上一次的条件重新运行查找功能。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0076_0002.jpg?sign=1734438131-MCKgyIMu78EtvKqt3tUgtnjcGQQO9PGZ-0-024a9819a29940706f1c2f3d163eae24)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0076_0003.jpg?sign=1734438131-upFYkhjAkyCspSX9F5h5619hyyFM1QtG-0-8271c08aa5b8fd2bc9d5953ab83acee5)
例如,通过【搜索】【Java】,可以激活有关Java项目的查找功能,其对话框如下图所示。如果用户想比较精确的查找,可以通过对话框中的【搜索】、【限制为】及【搜索位置】来缩小搜索范围。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0076_0005.jpg?sign=1734438131-P00TNuPW0e6DdW3QDjbiKAKqYIC21NvI-0-98e7c66bf4ead8af7e76492e3521606e)
7.【项目】菜单
项目(Project)菜单主要用于管理Eclipse中的项目,可以对工作空间中的项目执行动作(构建或编译)。该菜单包括用于项目的【打开】、【关闭】及【自动构建】等操作,如下图所示。
在Eclipse中,从软件开发的角度来考虑,“项目”是指独立的应用程序或模块,它可以理解为是实现某项功能的源代码文件的集合。
8.【运行】菜单
运行(Run)菜单中包含了与程序【运行】和【调试】相关的各种操作,同时还具有保存【运行历史】和【调试历史】的记录功能,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0077_0001.jpg?sign=1734438131-DIblFyht6aJIj4K0swiNoBcBo5ZNNGVW-0-769da97e5b417ac28747d68d6e55b89d)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0077_0002.jpg?sign=1734438131-0zJrMsOKJvsbfNhfQetdPAkRCIjT1ePr-0-54bc909dfd60c1f2a3492c7a7ca025ce)
【运行】菜单中常用的【运行】和【调试】命令,可分别用快捷键【Ctrl+F11】和【F11】来激活。使用快捷键可以提高程序的开发效率。
9.【窗口】菜单
窗口(Window)菜单主要用于显示、隐藏或处理Eclipse中的各种视图和透视图,如下图所示。视图是为了定义Eclipse在窗口里显示的最初的设计和布局。
工作台会有许多不同种类的内部窗口,称为视图(View)。之所以称为视图,是因为这些窗口是以不同的视野来看整各项目。例如,大纲视图(Outline)可查看项目中当前选中的源文件的概略状况,如类名、方法名等。如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0077_0003.jpg?sign=1734438131-rMQ26XWeO6WOK7dzDmXW7JHdtJorUfJW-0-2c069942a09caaaec4544ab58ddb7ec0)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0077_0004.jpg?sign=1734438131-VOuGUZNTOj5feAHfP10nLrroA6WE6y8f-0-2e9f045b5cc031393698cf416fd65fbb)
视图主要控制在菜单和工具上显示什么内容。例如,在【窗口】【打开透视图】
【Java】中,一个Java 视图包括常用的编辑Java源程序的视图;而在【窗口】
【打开透视图】
【调试】中,用于调试的透视图则包括调试Java程序时要用到的视图。
10.【帮助】菜单
帮助(Help)菜单主要是提供有关使用工作台的说明,如下图所示。例如,【欢迎】这个指令会开启欢迎使用内容。【帮助内容】这个指令显示说明视图。说明视图含有工作台和已安装特性的相关信息。【安装新软件】这个指令会开启安装Eclipse的新插件和软件包等对话框。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0078_0001.jpg?sign=1734438131-7gPbTOgwuBSkEoDF8mHr30pDzuOAr9xS-0-c9d674db2b3378165bd4b62f9d872480)
2.2 使用Eclipse开始工作
2.2.1 创建Java项目
【范例2-1】 创建HelloWorld项目。使用项目向导创建一个Java项目。
本节视频教学录像:20分钟
通过前面的学习,读者对Eclipse工具应该有了一个基本的认识。本节学习如何使用Eclipse完成HelloWorld程序的编写和运行。
在Eclipse中编写应用程序时,需要先创建一个项目。在Eclipse中有多种项目(如CVS项目、Java项目及Maven项目等),其中Java项目是用于管理和编写Java程序的,这类项目是我们目前需要关注的,其他项目属于较为高级的应用,读者在有一定的Java编程基础后,可在参阅相关资料来学习它们的应用,创建Java项目的具体步骤如下。
⑴ 选择【文件】【新建】
【Java项目】命令,打开【新建项目】对话框,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0078_0004.jpg?sign=1734438131-CmllMAyOUcxxSfJQsdlqFxAeHhRCXObe-0-c6f5af422125ccd91161660fec608101)
⑵ 在弹出的【新建Java项目】对话框的【项目名】文本框中输入【HelloWord】文本,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0079_0001.jpg?sign=1734438131-tbcQ5X1JkbBgUCczimTDyuOVxAkfXDZh-0-1c8b2a38f7326d6b80a139d8446593bb)
⑶ 单击【完成】按钮,完成Java项目的创建。在【包资源管理器】窗口中便会出现一个名称为【HelloWorld】的Java项目,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0079_0002.jpg?sign=1734438131-yqzEPtyiJfOnR73rZyLNeRkxsn7pPKSE-0-826ffa5df7ae913e612959f5d8695187)
2.2.2 创建Java类文件
【范例2-2】 创建Hello Word类文件。使用向导创建一个Java类文件。
通过前面创建Java项目的操作,在工作空间中已经有一个【Java 项目】了。构建Java应用程序的下一个操作就是要创建HelloWorld类。创建Java类的具体步骤如下。单击工具栏中的【创建类】按钮或者在菜单栏中执行【文件】
【新建】
【类】命令,
如下图所示,启动【新建 Java 类】向导。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0080_0001.jpg?sign=1734438131-8dCbLoNjXDQwPHfJRlBC3DISow4ozheB-0-0c3e72cc273598828e8c7bb8c90d5a52)
⑴ 在【源文件夹】文本框中输入Java项目源程序的文件夹位置。通常系统向导会自动填写,如无特殊情况,不需要修改,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0080_0002.jpg?sign=1734438131-ukwTg0Z65xayDffjVG7CMCItB3mZX78k-0-bcddea7a424bf639f9a6571318f35a55)
⑵ 在【包】文本框中输入该Java类文件准备使用的包名,系统默认为空,这样会使用Java项目的【缺省包】。
⑶ 在【名称】文本框中输入新建类的名称,如“HelloWorld”。
注意
在这里使用的类的名称和项目的名称一致,这并不影响使用,它们分别代表类文件和Java项目文件,需要注意区分。
⑷ 选中【public static void main ( String [] args )】复选框,向导在创建类文件时,会自动为该类添加main()方法,使该类成为可以运行的主类。
⑸ 单击【完成】按钮,完成Java类的创建,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0081_0001.jpg?sign=1734438131-NfBJJ70JXTj9UtEopX8wpX6STpjhfOrp-0-e8f5e5fb380907cf7203c621aa88b1a4)
2.2.3 在代码编辑器中编写Java程序代码
在编写代码之前,读者需要了解“类”、“包”和“文件”这三个概念(后续的章节会更为详细地讲解)。类可以看作是用户自定义的一种数据类型。由于Java是一门纯面向对象的编程语言,在Java项目中,会用到大量的类。如果项目大了,难免会产生类的名称是相同的。例如,在“圆柱体”工程和“球体”工程中,它们可能都有相同的类名——体积类,而对于Java编译器来说,相同的作用范围内,类的名称必须是唯一的(即无二义性)。为了解决这个问题,Java就用“包(Package)”的概念,让有可能重名的类处于不同的“包”里。这样,“圆柱体”包里的“体积类”和“球体”包里的“体积类”就可以区分开了。
如同有两个人都叫“张三”,他们客观存在着,且都不想改名,为了区分二位,我们可用“河南的张三”和“河北的张三”来加以识别。这里的“河南”和“河北”,在一定意义上,就可以理解为是不同的“包”。有了“包”的概念,可以在很大程度避免类、方法等的重名。Java里的“包”概念和C++中的“名称空间(Namespace)”有着类似的含义。而所有的类都必须保存于某个特定的文件之中,这也就是源码文件(即.java文件)。
【范例2-3】 在代码编辑器中编写HelloWorld程序代码(HelloWorld.java)。
编辑器位于Eclipse工作台的中间区域,该区域可以重叠放置多个编辑器。编辑器的类型也可以不同,但是主要的功能都是完成Java程序、XML配置等代码的编写或者进行可视化设计工作。下面介绍如何使用该编辑器和使用代码辅助功能,来快速编写Java应用程序。
1. 打开编辑器
当使用创建Java类向导完成Java类文件的创建后,在Eclipse的工作台上会自动打开Java编辑器新创建的Java类文件。打开Java编辑器的方法如下。
⑴ 在【包资源管理器】窗口中,双击或者右击Java源文件HelloWorld.java,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0081_0002.jpg?sign=1734438131-RPHjy4jrpl0tlxrMPX5jQ9prGqKBjdHY-0-adc4dc2f238429a30f1708052f7ddfd1)
⑵ 在弹出的快捷菜单中执行【打开】命令,便可打开Java编辑器界面,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0082_0001.jpg?sign=1734438131-vjGIjo8dTCqff3QYuHPktcuuS4T9tv6Q-0-23e1f5f47c7fa30ac022ef9fa97f1c69)
提示
在Java代码编辑器的左侧右击,在弹出的快捷菜单中选择【显示行号】菜单项,可以启动Java编辑器自动显示行号的功能。
2. 编写Java程序代码
Eclipse具有强大的Java语法突出显示功能。例如,Java编辑器能以各种样式(如字体加粗或斜体等)和不同的颜色来突出显示Java语法(如用紫色显示Java关键字,绿色显示注释部分)用户可根据自己的习惯在菜单栏【窗口】【首选项】
【Java】
【代码样式】中做个性化的设置。其中被突出显示的语法包括程序代码注释、Javadoc注释、Java关键字、变量以及字符串等。
此外,Eclipse还有不错的代码辅助功能。例如,在编写Java程序代码时,可以使用【Ctrl+Alt+/】组合键自动补全Java关键字,也可以使用【Alt+/】快捷键启动Eclipse的代码辅助菜单。下面介绍如何使用Eclipse的代码辅助功能完成Hello world类的代码编写,具体的操作步骤如下。
⑴ 在【包资源管理器】窗口中,双击【HelloWorld.java】Java源文件。
⑵ 在Java代码编辑器的左侧右击,在弹出的快捷菜单中选择【显示行号】菜单项,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0082_0005.jpg?sign=1734438131-75byWJdLGyLxaRzXEMcpTtUrnE52v3If-0-6452681491f9b2c37618ae0c9921171b)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0082_0006.jpg?sign=1734438131-YdSIqreoQ4c1kuWstXfLiqOVwbYriacc-0-e5ab82e0c22ef6028d63ade29b6c82f6)
注意
下面仅需在第6行代码中输入“System.out.println("Hello World!");”代码,就可以完成输出Hello World!语句的功能。
⑶ 在第6行代码中输入Sys后按住【Alt+/】快捷键启动Eclipse的代码辅助菜单,使用上下方向键移动选中的项,按回车键确认,也可直接用鼠标在辅助菜单中双击选中System项,便可自动输入该项,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0082_0007.jpg?sign=1734438131-WUNxPwj9Rx0mDUB4ns1YFDMJ6n7QhhfC-0-aa8ab286492d43f9cdfc557a1b1fa49c)
⑷ 按照相同的方法,完成“System.out.println("Hello world!");”语句的输入,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0001.jpg?sign=1734438131-maws4H65EJL4gG4AndKteOcyiJXV1P6Z-0-2d85208e3faca2dfc33d3b25924e3ce0)
⑸ 在Eclipse中读者还可以直接选择【sysout -打印到标准输出】选项来完成输出语句的快捷编写。第(3)步和第(4)步中的非快捷编写,如果用户想输入“System.out.println( )”,用户需要多用2次智能提示才能完成。在完成System的输入后,按下点“.”,从可选项中选择“out”,如下图(左)所示。
然后,在完成“out”输入后,接着输入点“.”,从可选项中输入println(),如下图(右)所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0002.jpg?sign=1734438131-JkVEXUvDd6lXac6EOQZQeurFThnwnFXg-0-fbc981e0f3eb7e08ec88879351cdfd60)
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0003.jpg?sign=1734438131-5Pm8rTkFUmON6cyfM8nioAwllA6Oz8vN-0-765f075b7aeb301537d3ae59a1e31276)
而如果读者选择【sysout -打印到标准输出】选项,则一次性的输出语句“System.out.println();”,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0004.jpg?sign=1734438131-4trw4blaUeCTHizkf02uzsDWA1JK7B47-0-b17fa277e7467acdf965d4a583146d32)
⑹ 如果在输入的过程中出现了漏输入或者错误的输入,将鼠标停留在红色处,编辑器会做出正确的语法提示,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0005.jpg?sign=1734438131-IhfHFaZl7kLtmXgX2VWIqhbnJsCLP80Q-0-ba6289731d5d91a79c66af9e31b3d4ec)
⑺ 如果完成了完整语法的输入,最后没有输入【;】语句结束符号,系统也会给出正确的语法提示,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0083_0006.jpg?sign=1734438131-5eFvkp4fjTtt3yzO2MiU7N4spO7F2yrA-0-15db6533bc4cfc0794945d0250b494c5)
⑻ 完整的代码如下所示。
01 public class HelloWorld { 02 public static void main(String[]args){ 03 System.out.println("Hello world!"); //输出"Hello World!"到控制台 04 } 05 }
2.2.4 运行Java程序
【范例2-4】 运行HelloWorld程序。在控制台中显示HelloWorld程序运行结果。
前面所创建的HelloWorld类是包含main()主方法的,它是一个可以运行的主类。具体运行方法如下。
⑴ 在【包资源管理器】窗口中,右击【HelloWorld.java】Java源文件。
⑵ 在弹出的快捷菜单中执行【运行方式】【Java应用程序】命令,在弹出的【保存并启动】对话框中单击【确定】按钮,保存并启动应用程序。如果选中【在启动前始终保存资源】,那么每次运行程序前将会自动保存文件内容,从而跳过下图对话框。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0084_0002.jpg?sign=1734438131-II9mnBmsqFNvsfPSQQcbSMgCNKYafMH2-0-948ae54d462602a5c04bd7b64845660d)
⑶ 单击【确定】按钮后,程序的运行结果便可在控制台中显示出来,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0084_0003.jpg?sign=1734438131-LDGo4BODgJys7dtXWnLpPhdeoEsRVvJF-0-dc1eed7eaa90d8d7c75d774f26e747e1)
2.3 在Eclipse中调试程序
本节视频教学录像:7分钟
在Eclipse中,交互式运行代码是其最强大的特性之一。使用JDT调试器,可以逐行执行Java程序,检查程序不同位置变量的值,这个过程在定位代码中的问题时非常有用。
为了准备调试,需要在代码中设置一个断点,以便让调试器暂停执行,而允许进行调试,否则程序会从头执行到尾,就没有机会调试了。在编辑器左边灰色边缘双击,这里将第3行代码println()函数位置设置为断点,此时会显示一个蓝色的小点,表示一个活动的断点,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0085_0001.jpg?sign=1734438131-7ntdXZScSrJNHZpLYrRhq7weDW9CODrV-0-2102ed7adb9c306c286f742505a0176e)
在调试器中运行程序和正常运行类似,Eclipse提供了两个选项:【Java应用程序】和【调试】。
⑴ 在代码中右击,在弹出的快捷菜单中单击【调试方式】【Java应用程序】选项,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0085_0003.jpg?sign=1734438131-K59KbvfwCdJJVa7LeEOsp1yFCEzlR0lU-0-b138aea6488eb959b8e78b58544fe03d)
Eclipse将会启动程序,在弹出的对话框中单击【是】,并选中【记住我的决定】,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0086_0001.jpg?sign=1734438131-LH5q4TzCcKjlAvMHoqa4j9ypt89F5brA-0-3a93a4808f435b1c1c05dd4161457f0e)
⑵ 自动切换到调试透视图,在断点暂停执行。如前文所述,所谓视图,就是工作台中的不同种类的内部窗口。调试透视就是方便调试程序,其显示的几个与调试相关的小窗口,包括【调试】视图、【变量】视图、【源代码】、【大纲】视图及【控制台】等。如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0086_0002.jpg?sign=1734438131-HzIOI2bj9nKobhumLF8oOz11sbdJUK4a-0-198fc0353e43531bfdf220148a062c4e)
Eclipse 平台的特色在于内置了 Java 的调试器,该调试器提供所有标准调试功能,包括进行单步执行、设置断点和值、检查变量和值以及暂挂和恢复线程的能力。调试视图作为Eclipse调试透视图的一部分,如上图(左上窗口)所示,调试视图在工作台中管理程序的调试和运行,它为调试中的每个目标显示其暂挂线程的堆栈帧。程序中的各个线程以作为树的节点出现,而调试视图则显示运行中的各目标的进程。⑶ 在代码中右击,在弹出的快捷菜单中单击【调试方式】【调试配置】选项,打开【调试配置】对话框。这里采用的是对调试选项的一些标准配置,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0087_0001.jpg?sign=1734438131-ozxhHKZWk8MEUMjsSJ00aAGk8sZG5k6Z-0-97cd513ac59db4c07367caeeac21e506)
除此之外,Eclipse还支持远程Java调试。这种情况下,用户要选择左侧视图中的【远程Java应用程序】项,可以创建一个新的远程启动配置,如输入运行 Java 程序的远程主机的 IP 地址或域名等。
⑷ 单击上图中的【调试】按钮,Eclipse将会回到调试透视图,在断点暂停执行,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0087_0002.jpg?sign=1734438131-XtO0Pzmq5eWpGnTzSPc6r6BnykPagAwc-0-b5307680c657a61494fe0d3f736d1cf2)
程序执行到断点被暂停后,可以通过Eclipse窗口工具栏中的按钮进行相应的调试操作。例如在【调试视图】选择继续、停止等,如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0087_0003.jpg?sign=1734438131-O86mrRa1QsdCNWX0rPOY3JAMC5PqE06E-0-e9a3ee40b1711a0702cdd6808cd80aae)
2.4 高手点拨
本节视频教学录像:3分钟
1. 英文Windows 7下Eclipse的中文界面切换
如果读者的Windows 7是英文版本的,还想使用中文版本的Eclipse,除了在2.1.2小节介绍的下载多国语言包之外,还要在桌面的Eclipse图标,右键单击【Property】,在出现界面的【Target】文本框中添加启动参数:D:\eclipse\eclipse.exe -nl "ZH",如下图所示,然后单击【OK】,即可完成Eclipse的中文界面转换。这里的“ZH”表示中文,而“D:\eclipse\eclipse.exe”是英文版Windows 7操作系统下的Eclipse所在路径。
2. Eclipse的英文界面恢复
虽然Eclipse的中文版更适合初学者,但建议英文基础比较好的读者,直接用英文版的Eclipse,这将对以后的学习有很大帮助,习惯于英文开发环境亦是一个Java高手的特征之一。如果Java学习有了一定的时间,读者想将中文的Eclipse切换回英文版,其实不用将2.1.2小节安装的多国语言包删除,仅在快捷方式中目标的地址后面加上参数(-nl "区域语言代码"),即可实现界面语言的切换,如:
D:\eclipse\eclipse.exe -nl "EN"。
如下图所示,其中“D:\eclipse\eclipse.exe”是Eclipse的所在路径,“EN”表示英文。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0088_0001.jpg?sign=1734438131-fovjq4mNQlojoFEWj0zxnMtjdXwxGgEP-0-c602ea236bb2083c41a1bb79529eb4b5)
启动Eclipse的中文界面
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0088_0002.jpg?sign=1734438131-K63vs7BsqWHItBQNvRQKaV552C1RdMrf-0-fd1250f4e25a3e3a81f651aec1463ba1)
还原Eclipse的英文界面
3. Eclipse并不是Java程序开发的必选项
学习Java过程中,要对Eclipse有个客观的认识。事实上,Eclipse仅是一个好用的Java集成开发环境,并不是学习Java的“标配”,等读者有一定的编程经验,可完全脱离Eclipse来开发Java程序。可用编辑器如Notepad++、Utraedit等(Linux下可以使用vim或gedit)来编辑Java源代码,然后用Oracle公司提供的JDK,仅使用javac和java等命令就可实施Java程序的开发。
4. 常用的Eclipse快捷键
读者如果能熟练使用Eclipse的快捷键,可提高Eclipse的使用效率。下表给出使用频度较高的快捷键。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0089_0001.jpg?sign=1734438131-niKiMLmQZbdDR88OFQdgx20LwT6ceG1P-0-b6121c53b2af5c00bfbcc4df80d3d690)
2.5 实战练习
本节视频教学录像:6分钟
在Eclipse中创建一个项目并编写程序,实现在控制台输出“《Java从入门到精通》是学习Java的好助手!”,程序运行结果如下图所示。
![](https://epubservercos.yuewen.com/CE08B9/3731466204449101/epubprivate/OEBPS/Images/figure_0089_0002.jpg?sign=1734438131-7aVNEEqLrrwOXvBcJngl7w7Uvxl19dJW-0-7a2d79b0fece3566692455e6c8856f3a)