Eclipse插件开发文档记录
Eclipse IDE开发环境使用教程说明书
iAbout the T utorialEclipse is an integrated development environment (IDE) for Java and other programming languages like C, C++, PHP, and Ruby etc. Development environment provided by Eclipse includes the Eclipse Java development tools (JDT) for Java, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.This tutorial will teach you how to use Eclipse in your day-2-day life while developing any software project using Eclipse IDE. We will give special emphasis on Java project. AudienceThis tutorial has been prepared for beginners to help them understand basic functionality of Eclipse tool. After completing this tutorial, you will find yourself at a moderate level of expertise in using Eclipse IDE from where you can take yourself to next levels. PrerequisitesWe assume you are going to use Eclipse IDE to handle all levels of Java projects development. So it will be good if you have knowledge of software development using any programming language specially Java programming.Copyright & Disclaimer© Copyright 2015 by Tutorials Point (I) Pvt. Ltd.All the content and graphics published in this e-book are the property of Tutorials Point (I) Pvt. Ltd. The user of this e-book can retain a copy for future reference but commercial use of this data is not allowed. Distribution or republishing any content or a part of the content of this e-book in any manner is also not allowed without written consent of the publisher. We strive to update the contents of our website and tutorials as timely and as precisely as possible, however, the contents may contain inaccuracies or errors. Tutorials Point (I) Pvt. Ltd. provides no guarantee regarding the accuracy, timeliness or completeness of our website or its contents including this tutorial. If you discover any errors on our website or inthistutorial,******************************************iT able of ContentsAbout the Tutorial (i)Audience (i)Prerequisites (i)Copyright & Disclaimer (i)Table of Contents .................................................................................................................................... i i 1.OVERVIEW (1)What is Eclipse? (1)Licensing (1)Eclipse Releases (1)2.INSTALLATION (3)Downloading Eclipse (3)Installing Eclipse (3)Launching Eclipse (4)3.EXPLORE WINDOWS (5)Parts of an Eclipse Window (5)Using Multiple Windows (6)4.EXPLORE MENUS (7)Typical Eclipse Menus (7)Brief Description of Menus (8)Customizing Menus (8)5.EXPLORE VIEWS (9)About Views (9)Organizing Views (9)Moving Views (9)Creating View Folders (10)Opening a view (10)6.PERSPECTIVES (13)What is a Perspective? (13)Opening a Perspective (13)Switching between Perspectives (13)Closing a Perspective (14)Customizing a Perspective (14)7.WORKSPACES (16)About Eclipse Workspace (16)UI Elements for Managing the Workspace (16)8.CREATE JAVA PROJECT (18)Opening the New Java Project wizard (18)Using the New Java Project wizard (18)Viewing the Newly Created Project (20)9.CREATE JAVA PACKAGE (21)Opening the New Java Package wizard (21)Using the New Java Package Wizard (21)Viewing the Newly Created Package (22)10.CREATE JAVA CLASS (23)Opening the New Java Class Wizard (23)Using the New Java Class Wizard (23)Viewing the Newly Created Java class (24)11.CREATE JAVA INTERFACE (25)Opening the New Java Interface Wizard (25)Using the New Java Interface Wizard (25)Viewing the Newly Created Java Interface (26)12.CREATE XML FILE (27)Opening the New XML File wizard (27)Using the New XML File wizard (28)Viewing the Newly Created XML File (29)13.JAVA BUILD PATH (30)Setting the Java Build Path (30)14.RUN CONFIGURATION (31)Creating and Using a Run Configuration (31)15.RUNNING A PROGRAM (33)Running a Java Program (33)16.CREATE JAR FILES (35)Opening the Jar File wizard (35)Using the Jar File wizard (35)17.CLOSE PROJECT (37)Why Close a Project? (37)How to Close a Project? (37)Closed Project in Package Explorer (38)18.REOPEN PROJECT (39)Reopening a Closed Project (39)19.BUILD PROJECT (40)Building a Java Project (40)20.DEBUG CONFIGURATION (42)Creating and Using a Debug Configuration (42)21.DEBUGGING A PROGRAM (44)Debugging a Java Program (44)22.PREFERENCES (48)Setting Preferences (48)23.CONTENT ASSIST (50)Using Content Assist (50)24.QUICK FIX (52)Using Quix Fix (52)25.HOVER HELP (54)Using Hover Help (54)26.SEARCH MENU (56)Searching the Workspace (56)27.NAVIGATION (58)Navigating the Eclipse Workspace (58)Open Type (58)Open Type in Hierarchy (60)Open Resource (61)28.REFACTORING (63)Refactoring using Eclipse (63)29.ADD BOOKMARKS (64)About Bookmarks (64)Adding a Bookmark (64)Opening the Bookmarks View (64)Using the Bookmarks View (65)30.TASK MANAGEMENT (66)Managing Tasks (66)Opening the Tasks View (67)Using the Tasks View (67)31.INSTALL PLUGINS (69)Locating and Installing Plug-ins (69)32.CODE TEMPLATES (73)Using Code Templates (73)Modifying/Adding code templates (74)33.SHORTCUTS (75)About Shortcuts (75)34.RESTART OPTION (78)Restarting Eclipse (78)35.TIPS & TRICKS (79)36.WEB BROWSERS (81)Internal Web Browser (81)Eclipse 7What is Eclipse?In the context of computing, Eclipse is an integrated development environment (IDE) for developing applications using the Java programming language and other programming languages such as C/C++, Python, PERL, Ruby etc.The Eclipse platform which provides the foundation for the Eclipse IDE is composed of plug-ins and is designed to be extensible using additional plug-ins. Developed using Java, the Eclipse platform can be used to develop rich client applications, integrated development environments, and other tools. Eclipse can be used as an IDE for any programming language for which a plug-in is available.The Java Development Tools (JDT) project provides a plug-in that allows Eclipse to be used as a Java IDE, PyDev is a plugin that allows Eclipse to be used as a Python IDE, C/C++ Development Tools (CDT) is a plug-in that allows Eclipse to be used for developing application using C/C++, the Eclipse Scala plug-in allows Eclipse to be used an IDE to develop Scala applications and PHPeclipse is a plug-in to eclipse that provides complete development tool for PHP.LicensingEclipse platform and other plug-ins from the Eclipse foundation is released under the Eclipse Public License (EPL). EPL ensures that Eclipse is free to download and install. It also allows Eclipse to be modified and distributed.Eclipse ReleasesEvery year, since 2006, the Eclipse foundation releases the Eclipse Platform and a number of other plug-ins in June.1.Eclipse8Eclipse 9Downloading EclipseYou can download eclipse from /downloads/. The download page lists a number of flavors of eclipse.The capabilities of each packaging of eclipse are different. Java developers typically use Eclipse Classic or Eclipse IDE for developing Java applications.The drop down box in the right corner of the download page allows you to set the operating system on which eclipse is to be installed. You can choose between Windows, Linux and Mac. Eclipse is packaged as a zip file.Installing EclipseTo install on windows, you need a tool that can extract the contents of a zip file. For example you can use:∙7-zip ∙PeaZip ∙ IZArcUsing any one of these tools, extract the contents of the eclipse zip file to any folder of your choice.2.Launching EclipseOn the windows platform, if you extracted the contents of the zip file to c:\, then you can start eclipse by using c:\eclipse\eclipse.exeWhen eclipse starts up for the first time it prompts you for the location of the workspace folder. All your data will be stored in the workspace folder. You can accept the default or choose a new location.1011If you select "Use this as the default and do not ask again", this dialog box will not come up again. You can change this preference using the Workspaces Preference Page. See the Preference tutorialpage for more details.Eclipse 12Parts of an Eclipse WindowThe major visible parts of an eclipse window are:∙Views ∙Editors (all appear in one editor area) ∙Menu Bar ∙ ToolbarAn eclipse perspective is the name given to an initial collection and arrangement of views and an editor area. The default perspective is called java. An eclipse window can have multiple perspectives open in it but only one perspective can be active at any point of time. A user can switch between open perspectives or open a new perspective. A perspective controls what appears in some menus and tool bars.3.EclipseA perspective has only one editor area in which multiple editors can be open. The editor area is usually surrounded by multiple views. In general, editors are used to edit the project data and views are used to view the project metadata. For example, the package explorer shows the java files in the project and the java editor is used to edit a java file.The eclipse window can contain multiple editors and views but only one of them is active at any given point of time. The title bar of the active editor or view looks different from all the others.The UI elements on the menu bar and tool bar represent commands that can be triggered by an end user.Using Multiple WindowsMultiple Eclipse Windows can be open at the same time. To open a new window, click on the Windows menu and select the New Window menu item.Each window can have a different perspective open in them. For example you could open two Eclipse windows one in the Java perspective and the other in the Debug perspective. The window showing the Java perspective can be used for editing the java code and the window showing the debug perspective can be used for debugging the application being developed.13Eclipse 14T ypical Eclipse MenusThe typical menus available on the menu bar of an Eclipse window are:∙File menu ∙Edit menu ∙Navigate menu ∙Search menu ∙Project menu ∙Run menu ∙Window menu ∙ Help menu4.Plug-ins can add new menus and menu items. For example when the java editor is open, you will see the Source menu and when the XML editor is open, you will see the Design menu. Brief Description of Menus15Customizing MenusThe visible menu items on a menu depend on the installed plug-ins and customization done using the Customize Perspective dialog box.16Eclipse 17About ViewsEclipse views allow users to see a graphical representation of project metadata. For example the project navigator view presents a graphical representation of the folders and files associated with a project and properties view presents a graphical representation of an element selected in another view or editor.An eclipse perspective can show any number of views and editors. All editor instances appear in a single editor area, whereas views are placed inside view folders. A workbench window can display any number of view folders. Each view folder can display one or more views. Organizing ViewsThe following picture shows four views arranged in a view folder.The picture given below shows the same four views arranged in two view folders.5.Moving ViewsTo move a view from one view folder to another, just click on the view title and drag to the title bar area of another view folder. The green line shown below is a result of dragging the title bar of the Properties view from one view folder to the title bar area of another view folder. The Properties view can be moved to where the green line is by releasing the mouse button and sending out a drop event.Creating View FoldersView folders can be dynamically created by dragging the title bar of a view to anywhere outside the editor area and title bar of another view folder. As you drag the title bar around, green lines will indicate where exactly the new view folder will be created.Moving the drag icon to the bottom of a window allows you to create a view folder that spans the entire width of the window. Moving the drag icon to the left or right edge of window allows you to create a view folder that spans the entire height of the window.18Opening a viewTo open a view, click on the Window menu and select the Show View menu item.19Clicking on the Other menu item brings up the Show View dialog box that allows you to locate and activate a view.20The views are organized by category. To quickly locate a view, just type the name of a view into the filter text box. To open a view, select it and click on the OK button. The subsequent pages of this tutorial introduce you to a number of useful views.21End of ebook previewIf you liked what you saw…Buy it from our store @ https://22。
Eclipse-plugin插件开发
使用PDE开发插件--步骤8
点击“完成”,完成插件项目的新建。 因为所创建的项目与“插件开发”透视 图相关联,因此将可自动转到“插件开 发”透视图。
使用PDE开发插件--步骤
插件项目生成之后,项目中将会包含一个按默 认方式生成的插HelloWorldPluginPlugin.java文 件。 因为该项目是一个插件项目,所以点击Eclipse 菜单栏中的“运行”按钮旁的下拉箭号,并选 择“运行为”->“运行时工作台”。运行后, 将生成一个和当前Eclipse几乎完全一致的平台, 惟一的差别是在新的Eclipse平台上增加了一个 “Hello,Eclipse world”插件(见下图中的工具 条上的第5个按钮)。
点击“下一步”,显示“插件代码生成 器”窗口 (如下图)。
在“插件代码生成器”窗口中,可以选择 “创建空白插件项目”生成一个空插件,也 可选择“使用代码生成向导创建插件项目”。 为了说明插件结构,本例使用代码生成向导 创建插件项目,并选择“Hello, World”代码 生成向导。
使用PDE开发插件--步骤6
\plugins\org.eclipse.core.runtime_2.1.1\runtime. jar \plugins\org.eclipse.swt.win32_2.1.0\ws\win32\s wt.jar \plugins\org.eclipse.ui.workbench_2.1.0\workbe nch.jar 注意,随着Eclipse的版本不同,以上文件的路径 名可能会有所不同。
requires标签
requires标签中所列出的是需要的插件, 需要用到Eclipse工作台和SWT API,因 此导入了org.eclipse.ui插件。
eclipse下SVN subclipse插件(图解)
eclipse下SVN subclipse插件本文目的让未使用过版本控制器软件或者未使用过subversion软件的人员尽快上手。
subversion的使用技巧很多,这里只总结了最小使用集,即主要的基本功能,能够用来应付日常工作。
因此不涉及subversion服务器端的搭建和配置。
为什么要使用版本控制当多人共同开发同一个软件时,会涉及源代码的共享以及带来的相关问题,比如追究某个代码是由谁在什么时间修改的。
下面列出版本控制带来的好处:∙为团队提供了所有项目文档的回退按钮,个人IDE工具只能提供某个文件的回退按钮,而不能做到,比如回退到2008年6月12日下午3点10分时的所有项目文件;∙支持多个开发人员在可控的方式下为相同的代码工作;∙版本控制系统保存了文档在过去的各个改动,便于查找是谁,在何时,因为什么修改了文档;∙支持在文档的主线上同时有多个版本(版本的分支和合并是版本控制的主要手段,一些开发团队仅仅是简单的共享代码主干);∙支持查询在某个时点上项目各个文档的状态,可用于研究生产效率等(比如,统计项目哪个时期代码提交最活跃,以及每个人的代码提交频次等等),也可用于对以前的软件发行版的再发行(比如,以前构建的2.0版本的安装包丢失了,那么可以通过版本控制器记录的历史重新回溯到那个版本,然后重新构建出安装包)。
为什么使用subversion首先,考虑的是使用免费开源和轻量级的版本控制器。
第二,要求使用比较广泛,可选的有cvs和svn。
这里选择svn,主要考虑是比较好集成apache使用,提交代码支持原子级操作(即,比如提交3个文件,如果因为网络或者其他原因,上传2个文件后中断,svn能做到服务器端回滚到提交前的状态,而cvs做不到这点,需要手工检查和恢复)。
subversion的程序构成subversion程序,和mysql很类似,是c/s结构的,有客户端和服务器端。
服务器端和客户端都是通过命令行方式启动和执行的。
Eclipse的插件
Eclipse插件大观Properties Editor 点击次数:6615Properties Editor 编辑java的属性文件,并可以自动存盘为Unicode格式Colorer Take 点击次数:4102Colorer Take 为上百种类型的文件按语法着色XMLBuddy 点击次数:5464XMLBuddy 编辑xml文件Code Folding 点击次数:3136Code Folding 加入多种代码折叠功能(比eclipse自带的更多)Easy Explorer 点击次数:2469Easy Explorer 打开在eclipse中选定文件所在的目录。
Fat Jar 点击次数:3618Fat Jar 打包插件,可以方便的完成各种打包任务,可以包含外部的包等RegEx Test 点击次数:2253RegEx Test 测试正则表达式Jigloo GUI Builder 点击次数:4166Jigloo GUI Builder JAVA的GUI编辑插件Profiler 点击次数:2623Profiler 性能跟踪、测量工具,能跟踪、测量BS程序AdvanQas 点击次数:1201AdvanQas 提供对if/else等条件语句的提示和快捷帮助(自动更改结构等)Log4E 点击次数:3340Log4E Log4j插件,提供各种和Log4j相关的任务,如为方法、类添加一个logger等VSSPlugin 点击次数:2935VSSPlugin VSS插件Implementors 点击次数:2179当追踪方法代码时,Eclipse默认是转到方法的接口类,而接口中是只有方法名称没有具体的实现代码,此插件提供了追踪到具体实现类的实现代码的功能。
Call Hierarchy 点击次数:1595Call Hierarchy 显示一个方法的调用层次EclipseTidy 点击次数:2369EclipseTidy基于HTML Tidy提供校验和格式化HTML/XML文件的功能Checkclipse 点击次数:2527Checkclipse 检查代码的风格、写法是否符合规范Hibernate Synchronizer 点击次数:14526Hibernate Synchronizer Hibernate插件,自动映射等VeloEclipse 点击次数:3328Velocity插件在线更新地址: http://log4e.jayefem.de/updateEditorList 点击次数:1161方便的列出所有打开的EditorMemoryManager 点击次数:2007内存占用率的监视TomcatPlugin 点击次数:7280支持Tomcat插件lomboz 点击次数:9638Lomboz是Eclipse的一个J2EE的插件,它将很多Java应用服务器、J2EE组件和Web应用开发集成到Eclipse 中,可以帮助Java开发者使用Eclipse建立、测试、部署J2EE应用。
Eclipse详解
Eclipse详解1.1 Eclipse的简介1.1.1Eclipse插件开发简介插件的概念读者应该很熟悉,象MP3播放软件WINAMP的皮肤插件、WindowsMedia Player的众多的外观插件、音效插件等等。
但如果你以为插件只能做成为原软件的边角料,那是可以理解的,因为你还没有看到过Eclipse的插件是什么样的。
Eclipse可以全面更新你对插件的概念,它也是对插件概念运用得最彻底最炉火纯青的一个软件。
在第一章我们就介绍了Eclipse的技术特点,Eclipse的内核很小,其他功能都是基于这个内核上的插件,如Eclipse自带的UNIT、ANT等。
而且Eclipse还开放了自己的插件机制,并提供了很好的插件开发环境,让用户可以自己来开发Eclipse的插件。
想知道开发Eclipse的插件能到什么程度吗?看看这些Eclipse上的插件吧:用于UML建模的Together for Eclipse、用于JSP的MyEclipse和Lomboz、IBM的全能开发工具WSAD等等,它们全是Eclipse的插件。
如果微软愿意,也可以把Office软件做成Eclipse的插件。
如果Adobe有兴趣,Photoshop也可以有for Eclipse的插件版,Eclipse中的API Draw2D的绘图功能也是很功的。
Eclipse的各式插件正如雨后春笋般不断冒出,Eclipse已经超越了开发环境的概念,它的目标是做成一个通用的平台,让尽量多的软件做为插件集成在上面,成为未来的集成的桌面环境。
同样我们可以将我们的应用系统写成Eclipse插件,笔者就在2004年参与开发了一个项目管理软件,该软件就是以Eclipse的插件形式开发的。
1.1.2 Eclipse插件开发的优势和不足那么将软件写成插件有什么好处呢?对于用户来说Eclipse的使用环境比较友好,前面介绍的SWT/JFace中还是比较基本的界面元素,象Eclipse中的视图、编辑窗、停泊窗这些界面如果实现呢?如果用Appliction的方式会很麻烦,如果写成Eclipse插件则实现这些界面风格不会吹灰之力。
TongWeb6 0 Eclipse插件使用手册
T o n g T ec h®TongWeb6.0 Eclipse插件使用说明东方通科技目录目录 (2)1.TongWeb6.0 Eclipse插件简介 (4)2.Eclipse插件功能概述 (4)2.1. Eclipse插件基本功能 (4)2.2. 简化应用开发功能 (4)2.3. 创建数据源 (4)2.4. 全局设置 (4)3.TongWeb6.0 Eclipse插件的安装 (5)3.1.安装WTP插件 (5)3.1.1.从Eclipse官网下载 (5)3.1.2.在Eclipse官网进行更新 (5)3.2.安装TongWeb6.0 Eclipse插件 (7)3.3.卸载TongWeb6.0 Eclipse插件 (7)4.TongWeb6.0 Eclipse插件的使用 (7)4.1.在Eclipse中打开或关闭TongWeb6.0 (7)4.1.1.在“Servers”视图中添加TongWeb6.0应用服务器 (7)4.1.2.启动或停止“TongWeb6.0应用服务器” (12)4.1.3.编辑“TongWeb6.0应用服务器” (14)4.2.使用“TongWeb6.0 Eclipse插件”开发工程 (14)4.2.1.创建并编写“企业级应用”工程 (14)4.2.2.创建数据源 (18)4.2.3.创建EJB2.x Session Bean (20)4.2.4.创建JP A工程 (28)4.2.5.开发WebService (34)4.3.部署工程 (44)4.3.1.打包后通过管理控制台或命令行部署 (44)4.3.2.直接将工程部署到TongWeb6.0应用服务器 (44)4.4.在Eclipse中浏览页面 (46)4.5.使用Debug功能 (46)4.6.解部署工程 (47)5.其他选项功能 (47)5.1. 查看应用服务器的基本信息及配置 (47)5.1.1. 基本信息(General Information) (48)5.1.2. 关于部署的配置(Publishing) (48)5.1.3. 超时时间设置(Timeouts) (48)5.2. 手动重部署应用(Publish) (48)5.3. 清理垃圾文件(Clean) (49)5.4. 部署与解部署项目(Add and Remove Projects) (49)5.5. TCP/IP监听功能(Monitoring) (49)5.6. 在Eclipse中查看管理控制台 (51)5.7. 查看应用服务器的属性(Properties) (51)6.全局设置 (51)6.1. Eclipse日志配置 (52)6.2. 详细显示TongWeb6.0的日志信息 (52)6.3. 以多种颜色显示TongWeb6.0的日志信息视图 (52)7.图形化功能 (53)1.TongWeb6.0 Eclipse插件简介Eclipse是一个开放的Java集成开发环境,通过一系列插件的支持可以方便的进行EJB、JSP/Servlet的开发。
Eclipse插件功能研究
在整个 Java™开发人员社区,Eclipse 因为行业领先的 Java Development Tools (JDT) 而广为人知。
但 Eclipse 构建目的在于促进插件的使用,而且在这一方面,它获得了惊人的成功。
探索已经构建到Eclipse 插件中的一些能力,比如使用 Ruby 等其他语言编程,或者是使用 OpenLaszlo 等环境构建交互式多媒体。
简介越来越多的Java 开发人员已经开始欣赏Eclipse 的JDT 提供的生产率和质量收益。
Eclipse 对编写Java 代码的支持真是棒极了。
它的Java 编辑器提供了语法高亮显示、格式化、折叠、内容辅助、代码模板等许多功能,我们大多数人都无法想像离开它们会怎么样。
它不断增长的可用重构和代码生成功能集合允许您在更高的级别上操作代码,并自动化通常的代码密集型任务和易错任务。
而且,在开发完代码并使用JDT 对编写和执行JUnit 测试的内置支持对代码进行单元测试之后,可以使用Eclipse 的一流Java 调试器调试在运行时遇到的任何问题。
除了JDT 之外,Eclipse SDK ——最流行的 下载——还包含Plug-in Development Environment (PDE)。
PDE 使用特定功能扩展了JDT 以构建Eclipse 插件——基于Eclipse 的应用程序的基本构造块。
事实上,使用由Eclipse 本身提供的工具能够超越Java 开发,可扩展现有Eclipse 应用程序,或者甚至创建全新的应用程序。
所有插件的汇总如果曾经使用过Eclipse,可能会遇到术语“插件”。
在架构上,Eclipse 由一个小运行时层构成,其中包含许多功能模块或Eclipse 术语中所谓的“插件”。
插件是在Eclipse 应用程序中提供所有功能的组件。
它们通过其API 一起协作来交付最终结果。
在Eclipse 中,甚至最基础的功能,比如查找和启动安装的插件,都封装在插件中。
基于Eclipse+Android_SDK_的多功能记事本设计
第19期2023年10月无线互联科技Wireless Internet Science and TechnologyNo.19October,2023作者简介:李志伟(1987 ),男,河南夏邑人,讲师,硕士;研究方向:物联网技术,计算机应用技术,职业教育㊂基于Eclipse +Android SDK 的多功能记事本设计李志伟(苏州高等职业技术学校,江苏苏州215000)摘要:传统的记录方式不能满足当前的信息记录要求,文章基于Eclipse +Android SDK 开发了一种多功能的电子记事本㊂使用面向对象的Java 语言以及轻量级的数据库SQLite 对数据和文件进行管理㊂实现了记事本的用户注册㊁登录㊁创建便签和编辑便签㊁便签记事㊁网络分享以及弹窗模块设计㊂功能测试结果表明,设计基本达到了用户的需求目标,具有方便㊁易用的特点㊂关键词:Eclipse ;Android SDK ;记事本;SQLite 中图分类号:TP319㊀㊀文献标志码:A0㊀引言㊀㊀在日常学习和工作中,人们经常需要快速㊁高效地记录许多信息㊂然而,传统的记录方式已经不能满足这种需求㊂研究和开发一种具有文字记录㊁拾音功能㊁文件分享等功能的电子记事本,显得十分有意义[1]㊂2020年,叶从玲[2]使用了Android 自带的SQlite 数据库,提高了记事本开发的效率㊂2021年,王杰等[3]使用Eclipse 开发工具实现了一种云记事本设计,具有随时记录㊁读取的特点㊂2022年,连壮[4]使用Java 语言实现了记事本启动界面的动画设计,用户体验性较好㊂多数记事本实现了增㊁删㊁改㊁查,以及信息检索等基本功能㊂缺少用户身份验证的记事本,存在一定的安全隐患㊂本文使用Eclipse 开发工具和Android 的SDK,开发了具有注册㊁登录功能的多功能记事本㊂合法用户可实现编辑记事㊁查找㊁分享等操作;能有效防止非法用户查看记录的信息,具有联网㊁丢失找回㊁编辑快捷等特点㊂1㊀需求分析及数据库设计㊀㊀需要实现的功能主要有:(1)用户的注册和登录;(2)文本记事基本的操作,如增㊁删㊁改㊁查;(3)共享功能,将记录的信息以短信或微信㊁QQ㊁邮件的方式共享给联系人㊂设计开发时应当考到以下内容:(1)记事便签加载时,应减少内存消耗,注意内存的释放;(2)加载音频和视频文件时,除了保证播放的流畅,还应保证音质㊁编辑的质量问题;(3)从技术可行性上分析,软件的配置环境应当满足开发者需求,所开发的应用能让大众所接受㊂另外,记事本的设计应遵循简单㊁使用方便的原则,设计不需要太复杂㊂数据库表的设计主要有两个,用于文本记事的表和关于用户的表,如表1 2所示㊂表1㊀文本记事表字段名数据类型,长度/bit是否允许空值主外键dates(创建日期)Varchar,50不允许null title(标题)Varchar,50不允许null context(记事内容)Varchar,10000允许null表2㊀用户表字段名数据类型,长度/bit是否允许空值主外键dates(创建时间)Varchar,50不允许主键theme(用户名)Varchar,50不允许nulltop_image(用户密码)Varchar,50不允许外键num(该用户的登录时间)Varchar,1000不允许null 2㊀多功能记事本详细设计㊀㊀多功能记事本除了具有图标设计的Logo 外,还包括了主界面㊁文本记事㊁便签记事㊁编辑记事㊁网络分享㊁记事模块弹窗等模块的设计㊂2.1㊀主界面设计㊀㊀主界面中的文本记事页面,包含了3个部分:第一部分是最上面一行的 标题栏 ,右边有两个按钮,分别有两个不同功能㊂ + 所代表的是添加记事功能模块,点击之后可以任意添加一种记事㊂点击 搜索 按钮,可将当前Activity跳转到搜索界面,输入关键字则可查找出所有标题带关键字的记事,并且能查看记事内容㊂第二部分的 模块向导 栏,点击即可跳转到相应模块界面㊂考虑到操作的简捷性,设计了可左右滑动,实现界面切换的功能,向左滑动屏幕则可跳转到上一个Activity,即上一个模块,向右滑动则跳转到下一个模块界面㊂在布局代码中,实现的关键组件为ViewPager,用它可以实现界面导航和屏幕切换㊂2.2㊀文本记事模块㊀㊀保持记事页面的 标题栏 和 模块向导 不变,增添需要展示的文本记事内容㊂操作时,可通过单击或双击每一项内容来实现㊂例如,可实现编辑㊁修改㊁保存㊁查看㊁删除等功能㊂设计时,为了使界面更加柔和,可通过将界面整体下拉或滚动,选择将展示内容的滚动条隐藏的方式㊂记事模块保持了界面的统一风格,更贴近Android软件的UI设计㊂ 展示内容 部分的核心代码,主要是通过重写Android提供的Adapter适配器类中的getView()方法来实现,主要功能就是将数据转换为视图,以便在UI布局中显示㊂2.3㊀便签记事模块㊀㊀此部分的 标题栏 和 模块向导 布局与文本记事模块中的设计一样㊂但是当用户所添加的便签记事内容过多,需要对这些便签进行管理㊁分类时,便签记事模块的功能优势就显现出来了㊂点击功能按钮,可以看到用户的所有便签记事㊂设计时需注意,若设计的便签过大,内存消耗过多,会导致此模块功能崩溃,程序无法正常运行㊂比如使用了setImageBitmap ()方法或setImageResource()来设置一张大图,在完成decode后,最终仍要调用Java层的createBitmap()方法来完成,这样就会消耗掉更多的内存资源㊂我们可以通过使用Android自带的㊁已封装好了方法,来解决内存占用过大的问题㊂比如,使用BitmapFactory. decodeStream()方法,创建出一个Bitmap,再将其设为ImageView的source,加载显示即可㊂这是因为decodeStream最大的优势是直接调用了nativeDecodeAsset()方法来完成decode,无需再使用Java层的createBitmap㊂便签记事的分类功能是通过Android提供的GridView控件来实现的㊂2.4㊀编辑记事模块㊀㊀该模块在设计时,选择系统自带的Media Play 类,即可实现对音频㊁视频的加载㊁插入㊁播放等操作㊂调用线程录制,可减少硬件原因导致的数据丢失问题㊂将反应慢的原始按钮样式,替代为成现代的㊁反应灵敏的话筒便签㊂考虑到安全性问题,需要重写按钮对应的方法来处理这个过程㊂为了保证编辑的质量,减少软件卡顿,可通过线程来实现㊂部分核心代码如下:mydata=new MyDataBase(getContext()," mydata");//将生成新的编辑文件dao=new DataBaseDAO(mydata);//实例化数据库连接类mHandler=new MyHandler();//用线程dialog_view.setImageResource(res[msg. what]);//根据声音强弱改变便签,从而达到看起来在说话的效果SetRecorderFile();//创建音频文件recorder=new MediaRecorder();//实例化Android多媒体类㊀㊀recorder.setAudioSource(MediaRecorder. AudioSource.MIC);㊀//设置音频格式recorder.setOutputFormat(MediaRecorder. OutputFormat.THREE_GPP);//设置输出格式recorder.setAudioEncoder(MediaRecorder. AudioEncoder.AMR_NB);//设置解码先设置前面的属性2.5㊀网络分享模块㊀㊀分享功能设计的难点在于,关键字高亮的设置问题㊂通过使用Google官方提供的SpannableString Builder类中的setSpan()方法,来处理高亮问题㊂该方法对原本的字符串做出处理处理后,亮出关键字,执行Textview.setText(result)方法,达到实现高亮效果㊂共享功能对数据的处理流程是,首先查询出数据库的所有数据,对于每类数据,保存在list集合中,随后对list集合进行遍历,remove掉所有包含关键字的项,对剩下的数据通过Adapter适配器选择性传到活动界面显示㊂对于每类数据都做这种处理,即可共享出所有符合条件的数据㊂部分关键代码如下: private void filter(){//根据关键字数据处理函数if(list.size()>0){//list存储数据库取出来的所有数据for(int i=0;i<list.size();i++){HashMap< String,String>mp=list.get(i);//去除不包含关键字的数据,words表示关键字内容if("".equals(words) mp.get("title"). indexOf(words)==-1){list.remove(i);i--;}}} if(list!=null&&list.size()>0){option.setvisible (true);}//如果最后有数据,则将相应模块设为可见状态else{option.setvisible(false);}}//如果没有数据,则相应模块设置为不可见状态2.6㊀记事弹窗模块㊀㊀长按每一项功能模块,都会弹出相应的操作列表㊂这些弹出框就是所有记事弹框的功能㊂目前,弹框消失是通过用户点击返回键或者取消键,或者在弹出框之外的任意处点击后,才会消失,不够简便㊂为了实现操作简便的效果,可将其设定为,只有点击取消按钮才会消失,否则不做任何操作㊂实现弹框的功能代码,主要是长按操作,触发事件处理机制,调用接口响应㊂部分核心实现代码如下://长按之后弹出列表删除㊁修改标题㊁更新内容㊁共享列表AlertDialog.Builder builder=new AlertDialog. Builder(mContext);//弹出框builder.setCancelable(false);//弹出框设为不可取消option.delete(dates);//调用接口实现删除操作option.update_title(dates);//调用接口实现更新操作option.update_context(dates);//调用接口实现更新操作option.send(dates,title);//调用接口实现共享操作builder.setNegativeButton( 取消 ,new DialogInterface.OnClickListener(){//点击取消按钮,关闭弹出框public void onClick(DialogInterface dialog,int which){dialog.cancel();//关闭弹出框3㊀系统测试㊀㊀任何一款设计软件,在发布㊁使用前必须进行测试㊂测试主要是查看软件中数据的准确性,能否满足需求,各功能模块的操作是否正常,以及还有哪些地方需要改进[5]㊂通常使用白盒测试技术和黑盒测试技术来对软件进行测试㊂前者是在了解系统内部工作流程的前提下,可以根据需求规范验证系统内部操作是否能够正常运行的测试;而黑盒测试指的是,倘若知道了这个系统的全部功能,可以进行测试㊁检测系统中的每一个功能是否满足正常使用㊂一般的测试用例分为输入㊁行为和希望结果3个部分㊂但是优秀的测试用例还需要从正确性㊁完整性㊁输入具体内容㊁用词无歧义㊁用例细化㊁判断点无歧义,以及合理区分优先级等几个方面考虑㊂在对多功能记事本应用进行测试时,需考虑到登录的权限进行测试,如用户登录模块测试㊁新增标签模块测试㊁删除分类测试以及弹窗模块测试㊁分享模块测试㊂对测试中发现的错误及时修改处理,保证系统准确无误地供给用户使用㊂4㊀结语㊀㊀本文基于Eclipse+Android SDK开发设计了一款多功能记事本㊂完成了需求分析与数据库表的设计;实现了多功能记事本的主界面设计㊁文本记事模块设计㊁便签记事与编辑记事模块设计,以及网络分享模块的设计;在登录㊁修改密码以及分类删除功能性测试方面,表明了设计的有效性㊂此类多功能的记事本具有很强的实用性,快捷㊁方便的记事特点,更有利于提高信息记录的效率㊂参考文献[1]江志华,陈翱天.基于Android平台的记事本App 的开发与实现[J].乐山师范学院学报,2020(12): 49-54.[2]叶从玲.基于Android的快捷记事本的设计与实现[J].电脑知识与技术,2020(9):90-91.[3]王杰,周晓梅.基于腾讯云的云记事本系统设计与研究[J].电脑知识与技术,2021(25):92-95. [4]连壮.智能记事本App的实现与研究[J].电子技术与软件工程,2022(16):59-62.[5]唐岩皓.多源室内定位技术的算法研究与应用[D].桂林:桂林电子科技大学,2019.(编辑㊀李春燕)Design of a multifunctional notepad based on Eclipse+Android SDKLi ZhiweiSuzhou Higher Vocational and Technical School Suzhou215000 ChinaAbstract Traditional recording methods cannot meet the current requirements for information recording.This article develops a multifunctional electronic notebook based on Eclipse+Android e object-oriented Java language and lightweight database SQLite to manage data and files.Implemented user registration login creation and editing of notes note keeping network sharing and pop-up module design for Notepad.The functional test results indicate that the design has basically met the user s requirements and has the characteristics of convenience and ease of use. Key words Eclipse Android SDK notepad SQLite。
eclipse插件开发流程
eclipse插件开发流程Eclipse插件开发流程Eclipse是一款开源的集成开发环境(IDE),它提供了丰富的插件机制,使开发者能够根据自己的需求定制和扩展IDE。
本文将介绍Eclipse插件开发的流程,帮助读者了解如何开始开发自己的插件。
1. 确定插件的功能和目标在开始插件开发之前,首先需要明确插件的功能和目标。
这包括确定插件的用途、解决的问题以及目标用户等。
明确插件的功能和目标有助于开发者更好地进行设计和实现。
2. 创建Eclipse插件项目在Eclipse中,可以通过插件开发工具(Plug-in Development Environment,简称PDE)来创建插件项目。
打开Eclipse,选择File -> New -> Project,在弹出的对话框中选择Plug-in Project,点击Next。
然后输入项目名称和选择插件的模板,点击Finish即可创建插件项目。
3. 定义插件扩展点插件扩展点是插件的核心概念,它定义了插件提供的功能和扩展的接口。
在插件项目的插件清单文件(plugin.xml)中,可以通过扩展标签来定义插件的扩展点。
根据插件的功能和目标,合理定义扩展点,使其具有良好的扩展性和灵活性。
4. 实现插件功能在插件项目中,可以创建多个插件类来实现插件的功能。
插件类通常继承自Eclipse提供的基类,并实现相应的接口。
通过重写方法和实现逻辑,可以实现插件的具体功能。
在实现插件功能的过程中,可以使用Eclipse提供的API和工具来简化开发过程。
5. 调试和测试插件在插件开发过程中,调试和测试是非常重要的环节。
Eclipse提供了强大的调试功能,可以帮助开发者定位和解决问题。
通过在Eclipse 中启动插件运行环境,可以直接调试和测试插件的功能。
在调试过程中,可以使用断点、变量监视等功能,帮助开发者更好地理解和分析插件的运行情况。
6. 打包和发布插件当插件开发完成后,可以将插件打包并发布到Eclipse插件市场或其他渠道。
eclipse jenkins二次开发例子
eclipse jenkins二次开发例子以下是一个基本的Eclipse Jenkins二次开发示例:1. 创建一个Eclipse插件项目:- 打开Eclipse,选择“File” -> “New” -> “Project”。
- 在弹出的对话框中,选择“Plug-in Project”作为项目类型,然后点击“Next”。
- 输入项目名称和项目位置,然后点击“Next”。
- 在“Template”页面上,选择“Hello, World!”模板,然后点击“Next”。
- 在“Plugin Content”页面上,选择“Generate an activator with a basic class”,然后点击“Next”。
- 在“Dependencies”页面上,选择“Jenkins Core”作为依赖项,然后点击“Next”。
- 在“Options”页面上,选择合适的选项,然后点击“Finish”来创建项目。
2. 添加Jenkins扩展点:- 打开项目的`plugin.xml`文件。
- 在扩展标签`<extension>`中添加一个扩展点,例如: xml<extensionpoint="jenkins.jobs"><jobTypename="MyJob"class="com.example.MyJob"plugin="my-plugin-id"/></extension>- 这将在Jenkins中注册一个名为“MyJob”的自定义作业类型。
3. 创建自定义作业类型:- 在项目中创建一个新的Java类,例如`com.example.MyJob`。
- 让该类继承`hudson.model.AbstractProject`,并实现必要的方法。
- 在类中添加必要的注解和逻辑,例如:java@Extensionpublic class MyJob extendsAbstractProject<FreeStyleProject, FreeStyleBuild> { // 添加必要的构造函数和其他方法@Overrideprotected Class<FreeStyleProject> getProjectClass() {return FreeStyleProject.class;}@Overridepublic FreeStyleBuild createExecutable() throws IOException {// 创建并返回一个可执行的构建对象}}- 可以根据需要添加其他自定义逻辑。
Eclipse开发记事本程序
Eclipse开发记事本程序1、新建项目,新建Visual Class,名称输入TextEditorApp,Style选Swing 下的Frame,选中public static void main(String[] args),完成。
2、进入JFrame中心面板,右击鼠标,设置中心面板的Layout为null布局。
3、在palette的Swing Containers下选择jScrollPane,建立滚动面板,选择JtextArea建立多行文本,重命名为textArea。
4、建立菜单栏jJMenuBar,插入四个菜单JMenu,分别改名为文件、编辑、工具、帮助;在“文件”下插入菜单项新建、打开、保存、退出;在“编辑”下插入菜单项复制、剪切、粘贴、全选、颜色;在“工具”下插入菜单项计算器、记事本;在“帮助”插入菜单项关于。
5、给“新建”菜单添加actionPerformed事件,在对应的代码处写入:textArea.setText(null);TextEditorApp.this.setTitle("无标题 - 记事本");6、给“打开”菜单添加actionPerformed事件,在对应的代码处写入:File f1;JFileChooser jfc1 = new JFileChooser();int num1 = jfc1.showOpenDialog(TextEditorApp.this);if(num1==JFileChooser.APPROVE_OPTION){try{f1 = jfc1.getSelectedFile();TextEditorApp.this.setTitle(f1.getName());FileReader fr = new FileReader(f1);BufferedReader br = new BufferedReader(fr);String str;while((str = br.readLine())!=null){textArea.setText(str);}fr.close();br.close();}catch(FileNotFoundException e1){e1.printStackTrace();}catch(IOException e2){e2.printStackTrace();}}7、给“保存”菜单添加actionPerformed事件,在对应的代码处写入:File f2 = null;JFileChooser jfc2 = new JFileChooser();int num2 = jfc2.showSaveDialog(TextEditorApp.this);if(num2==JFileChooser.APPROVE_OPTION){f2=jfc2.getSelectedFile();TextEditorApp.this.setTitle(f2.getName());try{FileWriter fw = new FileWriter(f2);BufferedWriter bw = new BufferedWriter(fw);bw.write(textArea.getText());bw.close();fw.close();}catch(IOException e2){e2.printStackTrace();}}8、给“退出”菜单添加actionPerformed事件,在对应的代码处写入:int a = JOptionPane.showConfirmDialog(TextEditorApp.this,"文件已被改变,是否要保存?","提示",JOptionPane.YES_NO_CANCEL_OPTION);if(a==1){TextEditorApp.this.dispose();}else if(a==0){File f2 = null;JFileChooser jfc2 = new JFileChooser();int num2 = jfc2.showSaveDialog(TextEditorApp.this);if(num2==JFileChooser.APPROVE_OPTION){f2=jfc2.getSelectedFile();TextEditorApp.this.setTitle(f2.getName());try{FileWriter fw = new FileWriter(f2);BufferedWriter bw = new BufferedWriter(fw);bw.write(textArea.getText());bw.close();fw.close();}catch(IOException e2){e2.printStackTrace();}TextEditorApp.this.dispose();}}9、给“编辑”菜单中的复制、剪切、粘贴、全选添加actionPerformed事件,在对应的代码处分别写入:textArea.copy();textArea.cut();textArea.paste();textArea.selectAll();10、给“颜色”菜单添加actionPerformed事件,在对应的代码处写入:Color color=JColorChooser.showDialog(textArea, "选择颜色", Color.BLACK);textArea.setForeground(color);11、给“记事本”菜单添加actionPerformed事件,在对应的代码处写入:try{String command = "notepad.exe";Process child = Runtime.getRuntime().exec(command);}catch (IOException ex){}12、给“计算器”菜单添加actionPerformed事件,在对应的代码处写入:try{String command = "calc.exe";Process child = Runtime.getRuntime().exec(command);}catch (IOException ex){}13、给“关于”菜单添加actionPerformed事件,在对应的代码处写入:String message = "--------\n版本:1.0\n作者:刘艳慧" + "\n\n感谢您的使用!";JOptionPane.showMessageDialog(TextEditorApp.this, message, "关于", JOptionPane.PLAIN_MESSAGE);注意:不能识别的文件需导入包,在错误处单击,选择需导入的包文件,双击引入。
JDT核心 - eclipse插件开发
JDT核心文档整理:eclipse插件开发群,群号:153432793,群主整理,转载请注明!JDT 核心JDT 核心(org.eclipse.jdt.core)是用于定义 Java 核心元素和 API 的插件。
在开发特定于 Java 的功能部件时,总是应该将此插件列示为先决条件。
JDT 核心包使您能够访问 Java 模型对象和无外设 Java IDE 基础结构。
JDT 核心包包括:•org.eclipse.jdt.core-定义用于描述Java 模型的类。
•piler-定义编译器基础结构的API。
•org.eclipse.jdt.core.dom-支持可用于检查编译单元的结构直到语句级别的“抽象语法树”(AST)。
•org.eclipse.jdt.core.eval-支持对代码片段编辑测试窗或调试器中的代码段进行评估。
•org.eclipse.jdt.core.jdom-支持Java“文档对象模型”(DOM),它可用于表示Java 编译单元的结构。
•org.eclipse.jdt.core.search-支持在工作空间的Java 模型中搜索与特定描述相匹配的Java 元素。
•org.eclipse.jdt.core.util-提供用于处理.class 文件和Java 模型元素的实用程序类。
从版本 3.0 起,建议不要使用 org.eclipse.jdt.core.jdom。
应使用org.eclipse.jdt.core.dom 来完成对编译单元的结构的处理。
Java 模型Java 模型是用来对与创建、编辑和构建 Java 程序相关联的对象进行建模的一些类。
Java 模型类是在org.eclipse.jdt.core中定义的。
这些类实现资源的特定于 Java 的行为,并进一步将 Java 资源分解成模型元素。
Java 元素包org.eclipse.jdt.core定义了用来对组成 Java 程序的元素建模的一些类。
Eclipse 使用说明书
Copyright© Interacoustics A/S:版权所有。
本文档中的信息归 Interacoustics⅍专有。
本文档中的信息如有更改,恕不另行通知。
未经 Interacoustics A/S事先书面许可,不得以任何方式或手段复制或传播本文档的任何部分。
目录1简介 (1)1.1关于本手册 (1)1.2使用说明 (2)1.2.1预期的操作人员 (2)1.2.2患者人群 (2)1.2.3禁忌症 (2)1.3产品说明 (3)1.4警告 (4)1.5故障 (5)2开箱和安装 (6)2.1检查 (6)2.2标记 (7)2.3硬件安装 (8)2.3.1将病床 /椅子放在地上 (9)2.3.2Eclipse 后面板 (10)2.3.3Eclipse前部面板 (10)2.3.4前置放大器按钮 (11)2.4软件安装 (11)2.4.1安装前须知 (11)2.4.2计算机系统最低要求 (11)2.4.3所需材料: (12)2.4.4软件安装 (12)2.4.5驱动程序安装 (13)2.4.6恢复软件出厂默认设置 (13)2.4.7安装语言包 (13)2.5识读台 (15)2.6许可证 (15)2.6.1Eclipse序列号 (15)2.6.2DSP序列号和许可证密钥 (15)2.7从 OtoAccess® 数据库启动 (16)2.7.1OtoAccess® 数据库中的模块设置 (16)2.8从Noah启动(仅 ASSR 或 IA OAE Suite) (17)3EP15/EP25操作说明 (18)3.1记录标签 (19)3.1.1主菜单项 (19)3.1.2电子帮助 (20)3.1.3查看历史会话 (20)3.1.4协议选择 (20)3.1.5临时设置 (20)3.1.6重新排列曲线 (20)3.1.7波形分组 (20)3.1.8报告 (20)3.1.9打印 (21)3.1.10显示A-B曲线 (21)3.1.11显示对侧曲线 (21)3.1.12授话 (21)3.1.13单曲线显示 (21)3.1.14分屏显示 (22)3.1.15保存并新建 (22)3.1.16保存并退出 (22)3.1.17刺激率选择 (22)3.1.18频率选择 (23)3.1.19刺激窗口 (23)3.1.20手动刺激窗口 (23)3.1.21状态窗口 (23)3.1.22波形再现性 (24)3.1.23开始/停止 (24)3.1.24暂停 (24)3.1.25下一强度 (24)3.1.26Fmp与残留噪声曲线图 (24)3.1.27扫描数/平均数的扩展 (25)3.1.28原始EEG (25)3.1.29高级EEG (25)3.1.30隐藏刺激伪影 (26)3.1.31显示增益 (27)3.1.32记录窗口 (27)3.1.33选择波形 (27)3.1.34移动单条曲线 (27)3.1.35显示微分曲线 (27)3.1.36为波形增添一条注释 (28)3.1.37拒收监测 (29)3.1.38放置波形标记 (29)3.1.39删除波形标记 (29)3.1.40建议波形标记 (30)3.1.41标准化潜伏期数据 (30)3.1.42删除单条曲线 (30)3.1.43放大/缩小单条曲线 (30)3.1.44隐藏单条曲线 (31)3.1.45固定单条曲线/与历史会话进行比较 (31)3.1.46合并曲线(创建加总曲线) (31)3.1.47添加曲线 (32)3.1.48同侧减对侧差值(Ipsi-Contra)曲线 (32)3.1.49A减B差值(A-B(N))曲线 (32)3.1.50修改显示滤波 (33)3.1.51记录的曲线状况 (33)3.1.52向曲线添加备注 (33)3.1.53使用光标 (34)3.1.54信噪比计算(3:1) (34)3.1.55CR、RA和INC波形标记 (34)3.2潜伏期标签 (35)3.2.1潜伏期值 (35)3.2.2潜伏期间值 (35)3.2.3潜伏期曲线图 (36)3.2.4显示波峰至波谷标记(SN10标记)(仅EPx5软件) (37)3.3Windows® 8, 10 和 11 无法启动帮助 (37)3.4电脑快捷键 (38)3.5测试前患者准备 (39)3.5.1阻抗检查 (39)3.5.2换能器 (39)3.6进行ABR阈值记录 (40)3.6.1电极画面 (40)3.6.2ABR阈值刺激 (40)3.6.3编辑ABR阈值记录 (41)3.6.4使用ABR阈值结果说明 (41)3.7进行神经潜伏期记录 (42)3.7.1电极画面 (42)3.7.2编辑神经潜伏期记录 (42)3.8进行eABR记录 (44)3.8.1两个推荐eABR电极画面 (44)3.8.2编辑eABR记录 (44)3.8.3电气阈值估算(用于人工耳蜗安接) (45)3.9进行ECochG记录 (46)3.9.1ECochG 电极安装 (46)3.9.2编辑ECochG记录 (48)3.10进行CM记录 (49)针对患者的准备工作至关重要 (49)3.10.1CM电极画面 (49)3.10.2用于CM记录的刺激 (49)3.10.3CM记录示例 (49)3.10.4CM结果内差值 (49)3.11进行AMLR记录 (50)3.11.1电极画面AMLR示例 (50)3.11.2可用AMLR刺激 (50)3.11.3AMLR记录示例 (51)3.12进行ALR记录/皮层ERA (52)3.12.1ALR阈值记录的电极画面示例 (52)3.12.2刺激信号 (52)3.12.3ALR结果说明 (53)3.12.4电生理阈值估算和婴幼儿听力仪器安接 (53)3.13进行P300/MMN记录 (54)3.13.1P300/MMN电极画面示例 (54)3.13.2可用P300/MMN刺激 (54)3.13.3P300和MMN参数汇总表 (55)3.14性能/环回(LBK15)测试 (55)4VEMP操作说明 (56)4.1前置放大器设置 (56)4.2VEMP监示器 (56)4.3VEMP波形标记 (57)4.4计算VEMP不对称率(VEMP伙伴) (57)4.5VEMP比例设定 (58)4.6进行cVEMP记录 (58)4.6.1用于cVEMP的电极画面 (58)4.6.2用于cVEMP的刺激 (59)4.6.3默认收集参数 (59)4.6.4程序 (59)4.6.5编辑cVEMP结果 (59)4.6.6cVEMP结果示例 (60)4.6.7cVEMP结果示例 (60)4.7进行oVEMP记录 (61)4.7.1oVEMP电极画面 (61)4.7.2用于oVEMP的刺激 (61)4.7.3默认收集参数 (61)4.7.4程序 (62)4.7.5oVEMP结果示例 (62)5研究模块 (63)5.1.1记录每次扫描(以便以后进行“中继”) (63)5.1.2导出平均曲线和/或完整会话 (64)5.1.3导出会话(所有曲线) (65)5.1.4离线导出波形 (65)5.1.5导入用于刺激的波形文件 (65)6操作说明 (69)6.1耳塞的操作和选择 (69)6.2OAE 设备的日常系统检查 (70)6.2.1探头完整性测试 (70)6.2.2真耳检查 (71)7.IA OAE Suite (72)7.1PC 电源配置 (72)7.2兼容的设备 (72)7.2.1从 OtoAccess® 数据库启动 (72)7.2.2从 Noah 4 启动 (72)7.2.3模拟模式 (72)7.2.4崩溃报告 (73)7.3使用菜单 (74)7.4使用 DPOAE 探头 (75)7.4.1准备测试 (75)7.4.2DPOAE 模块中的元素 (77)7.5使用 TEOAE 模块 (83)7.5.1准备测试 (83)7.5.2TEOAE 模块中的元素 (85)7.6使用打印向导 (90)8.ABRIS操作说明 (92)8.1使用ABRIS模块 (92)8.2安装电极 (92)8.3阻抗检查 (92)8.4回路(LBK15)测试 (93)8.5ABRIS测试屏幕 (93)8.5.1主菜单项 (93)8.5.2查看历史会话 (94)8.5.3保存并退出 (94)8.5.4打印 (94)8.5.5电子帮助 (94)8.5.6报告 (94)8.5.7查看EEG或噪声条 (94)8.5.8刺激窗口 (94)8.5.9测试状态窗口 (95)8.5.10受试耳 (95)8.6进行ABRIS记录 (96)8.6.1开始与暂停测试 (96)8.6.2EEG曲线图 (96)8.6.3EEG噪声条 (96)8.6.4AEP波形 (96)8.6.5备注框 (96)8.6.6状态栏 (97)8.6.7ABRIS反应曲线 (97)8.7电脑快捷键 (98)8.8可拆卸零部件 (98)9.ASSR操作说明 (99)9.1使用ASSR模块 (99)9.2ASSR测试前准备 (99)9.3测试前准备 (99)9.3.1皮肤准备 (99)9.3.2放置电极 (100)9.3.3阻抗检查 (100)9.4安装电极 (101)9.5阻抗检查 (101)9.6系统性能/回路(LBK15)测试 (101)9.7ASSR标签 (102)9.7.1主菜单项 (102)9.7.2协议选择 (102)9.7.3临时设置 (103)9.7.4报告 (103)9.7.5打印 (103)9.7.6保存并退出 (103)9.7.7查看历史会话 (103)9.7.8刺激窗口 (103)9.7.9总会话状态窗口 (104)9.7.10刺激率 (104)9.8进行ASSR记录 (105)9.8.1开始/停止 (105)9.8.2暂停 (105)9.8.3原始EEG曲线图 (105)9.8.4测试频率曲线图 (105)9.8.5CM 检测器 (106)9.8.6ASSR表 (106)9.8.7延长测试时间 (107)9.8.8调整刺激强度 (107)9.8.9中止测试频率/强度 (108)9.8.10ASSR 遮蔽计算器 (108)9.9听力图标签 (110)9.9.1估计的听力图符号 (110)9.9.2NOAH 或 OtoAccess® 数据库中的听力符号 (111)9.9.3估算听力图 (112)9.9.4AC 和 BC 在同一听力图中 (113)9.9.5无反应 (114)9.9.6选定的校正系数 (114)9.9.7电脑快捷键 (114)10.维护 (115)10.1通用维护程序 (115)10.2如何清洁国际听力产品 (115)10.3清洁OAE探头尖 (116)10.4关于维修 (117)10.5保修 (117)11.技术规格 (119)11.1技术规格 - Eclipse硬件 (119)11.2EP15/EP25/VEMP技术规格 (120)11.2.1peSPL至nHL校正值 (122)11.3TEOAE25技术规格 (123)11.4DPOAE技术规格 (124)11.5ABRIS技术规格 (125)11.6ASSR技术规格 (126)11.7电磁兼容性(EMC) (127)11.8Eclipse软件模块概览 (132)11.8.1EP15/EP25/VEMP模块 (132)11.8.2P15/EP25/VEMP模块刺激最大强度 (133)11.8.3TEOAE25模块 (134)11.8.4DPOAE模块 (134)11.8.5ABRIS模块 (134)11.8.6ASSR模块 (134)1简介1.1 关于本手册本手册适用于EP15/25 v4.6软件版本、IA OAE套件1.2、ABRIS v1.6.3、VEMP v4.6和ASSR v 1.3。
eclipse插件开发扩展点概述
Eclipse 插件开发的一个关键概念是扩展点(Extension Point)。
Eclipse 是一个开放的集成开发环境(IDE),通过插件机制,允许开发者扩展和定制Eclipse 功能。
扩展点是这一机制的核心,它允许开发者在现有功能基础上添加自定义功能。
以下是Eclipse 插件开发中关于扩展点的概述:1. 什么是扩展点?定义:扩展点是插件定义的一种标记或接口,用于允许其他插件在运行时提供额外的功能或信息。
作用:通过扩展点,插件可以向Eclipse 平台注册其特定的功能,并与其他插件共享数据和行为。
2. 扩展和插件之间的关系:插件:Eclipse 中的每个功能都被组织为一个插件。
插件可以包含一个或多个扩展点。
扩展:插件通过扩展点来定义和提供额外的功能。
其他插件可以通过扩展点来访问这些功能。
3. 扩展点的定义:扩展点定义:插件通过扩展点定义描述其支持的扩展点。
这些定义通常包括扩展点的名称、ID、描述以及可接受的扩展内容等信息。
4. 扩展的注册:注册扩展:插件通过扩展点的注册,将其功能注册到Eclipse 平台。
这通常在插件的plugin.xml 文件中完成。
5. 示例:以下是一个简化的扩展点定义示例,该示例用于定义一个视图(View)的扩展点:xmlCopy code<extension-point id="sample.viewExtension" name="Sample View Extension" schema="schema/viewExtension.exsd" />在其他插件中,可以通过扩展该扩展点来定义和注册新的视图。
6. 运行时动态性:扩展点的强大之处在于其运行时动态性。
新的插件可以随时添加到Eclipse 中,而不需要修改现有代码。
7. API 和扩展点交互:插件可以通过Eclipse 提供的API 访问和操作其他插件提供的扩展点。
Eclipse中配置插件方法
Eclipse 可以与任何一种IDE匹敌,甚至比它们还要好。
Eclipse 有代码补足、代码模板的功能,以及对重构、Ant、CVS 和 JUnit 的支持。
除了这些基本功能之外,Eclipse 的优点之一就是它的源代码是开放的,可扩展性很好,可以扩充很多插件,开源插件和商业插件都可以用来扩充 Eclipse。
如果用户需要基本的 Eclipse IDE 所不具备的特性,一般都可以找到需要的插件。
在大部分情况下,用户都可以找到免费的插件。
由于 Eclipse 的流行性和开源特性,它已经在 IDE 领域成为一把尖刀,一方面,Eclipse 在一步一步完善自己的功能,另一方面,Eclipse正在大刀阔斧抢占IDE开发的应用领域。
数据表明Eclipse是现在最流行的Java开发环境之一,为了更好的使用Eclipse进行开发,就有必要了解Eclipse插件的机制,以及如何安装和使用插件。
Eclipse插件Eclipse 是一个已经完全设计好的平台,是用于构建和集成应用的开发工具。
平台本身不会提供大量的最终用户功能,平台的价值在于它的促进作用:根据插件模型来快速开发集成功能部件。
平台本身是内置在插件层中的,每个插件定义下层插件的扩展,同时对自己的扩展进行进一步的定制。
每种类型的扩展允许插件开发者向基本工具平台添加各种功能,每个插件的部件(例如文件和其他数据)由公共平台资源来协调。
Eclipse最有魅力的地方就是它的插件体系结构,由于有了插件,Eclipse系统的核心部分在启动的时候要完成的工作十分简单:启动平台的基础部分和查找系统的插件。
Eclipse的核心是动态发现、懒惰装入(Lazy)与运行的,平台用户界面提供标准的用户导航模型。
于是每个插件可以专注于执行少量的任务,例如定义、测试、制作动画、发布、编译、调试和图解等,只要用户能想象得到的就会应有尽有。
当Eclipse插件实现了一个扩展点,就创建了一个扩展,此外,使用此扩展点的插件还可以创建自己的扩展点。
Eclipse插件开发指南
插件开发指南 Eclipse插件开发指南目录第1章Eclipse概述1.1 Eclipse简介1.1.1 Eclipse的历史1.1.2 Eclipse的优势与技术特征1.2 安装Eclipse1.2.1 安装的软硬件环境要求1.2.2 安装Eclipse 3.01.3 Eclipse插件的安装方法1.3.1 第三方插件SWT Deginer的下载与安装1.3.2 Eclipse中文包的安装(以Eclipse2.1.3为例)第2章Eclipse的使用2.1 Eclipse常用技巧和设置2.1.1 创建一个新的项目2.1.2 运行项目2.1.3 代码格式化及注释的设置2.1.4 使用Eclipse强大的重构功能2.1.5 任务(TODO)的设定2.1.6 程序代码的追踪2.1.7 在代码中搜索关键字2.1.8 打开类型层次结构2.1.9 调试器的使用2.2 Eclipse中CVS的使用2.2.1 CVS简介服务器端的安装、、配置与使用2.2.2 CVS服务器端的安装2.2.2.1 安装CVS服务器2.2.2.2 新建一个CVS项目2.2.2.3 CVS在服务器端的常用操作2.2.3 CVS客户端的配置与使用2.2.3.1 连接的设置导入、、导出项目2.2.3.2 导入2.2.4 文件提交与更新的方法2.2.4.1 提交与更新文件2.2.4.2 当文件冲突时的解决办法2.2.4.3 其它使用注意事项2.3 Eclipse中JUnit的使用2.3.1 JUnit简介2.3.2 JUnit的Hello World2.3.3 在实际项目中使用JUnit的注意事项第3章实战SWT3.1 SWT概述3.1.1 SWT简介起步::用SWT Deginer写一个Hello World3.1.2 SWT起步3.1.3 使用SWT Deginer的界面开发流程3.1.4使用SWT Deginer进行界面开发的注意事项3.2 SWT/JFace中的事件模型3.2.1 事件的两种常用写法3.2.2 常用事件介绍3.2.3 编写事件代码的注意事项3.3 SWT 常用控件类3.3.1 按钮按钮、、复选框复选框、、单选框单选框((Button 类)3.3.2 标签标签((Label 类)3.3.3 文本框本框((Text 类)3.3.4 下拉框下拉框((Combo 类)3.3.5 列表框列表框((List 类)3.3.6 一个多控件组合应用的综合实例3.4 容器类3.4.1 面板面板((Composite 类)3.4.2 分组框分组框((Group 类)3.4.3 属性页属性页((TabFolder 类)3.4.4 分割栏分割栏((SashForm 类)3.4.5 一个综合实例3.5 布局管理器3.5.1 填充式填充式((FillLayout 类)3.5.2 行列式行列式((RowLayout 类)3.5.3 网格式网格式((GridLayout 类)3.5.4 堆栈式堆栈式((StackLayout 类)3.5.5 表格式表格式((FormLayout 类)3.5.6 一个复杂布局的综合实例3.6 其它SWT 控件3.6.1 工具栏工具栏((ToolBar 类、ToolItem 类)3.6.3 动态工具栏动态工具栏((CoolBar 类、CoolItem 类)3.6.5 进度条进度条((ProgressBar 类)3.6.6 刻度条刻度条((Scale 类)3.6.7 滑动条滑动条((Slider 类)3.6.8 画布画布((Canvas 类)3.5.7 一个综合完整的应用程序一个综合完整的应用程序((Application )实例第4章 JFace 常用控件常用控件::实例步步深入4.1 表格表格((TableViewer 类)4.1.1 表格简介4.1.2 前期准备前期准备::实例所用数据模型说明4.1.3 让数据在表格中显示出来4.1.4 使用内容器使用内容器((ITreeContentProvider 接口接口))和标签器和标签器((ITableLabelProvider 接口接口))4.1.5 加上右键快捷菜单(Action 类、IMenuManager 接口)4.1.6 实现点击表头排序的功能实现点击表头排序的功能((ViewerSorter 类)4.1.7 加工具加工具栏栏:实现翻页实现翻页、、删除删除、、刷新功能刷新功能((ToolBarManager 类)4.1.8 创建一个带复选框的表格创建一个带复选框的表格((CheckboxTableViewer 类)4.1.9 表格的其它使用技巧4.1.10 表格使用的注意事项4.2 树(TreeViewer 类):):用实例步步深入用实例步步深入4.2.1 树简介4.2.2 前期准备前期准备::实例所用数据模型说明4.2.3 让数据在树中显示出来4.2.4 给树加上内容器和标签器4.2.5 加上右键快捷菜单并用ActionGroup 类来集中管理4.2.6 如何捕捉树中不如何捕捉树中不同结点的值同结点的值4.2.7 创建一个带复选框的树4.2.8 树的其它使用技巧4.2.9 树使用应注意事项4.3 对话框对话框((Dialog 类):):用实例步步深入用实例步步深入4.3.1 对话框简介4.3.2 对话框的Hello World4.3.3 给对话框设置初始值4.3.4 取得对话框中的数据4.3.5 自定义对话框的按钮带提示栏的对话框((TitleAreaDialog类)4.3.6 带提示栏的对话框4.3.7 对话框使用的注意事项向导式对话框((WizardDialog类)4.4 向导式对话框4.4.1 向导式对话框简介4.4.2 向导式对话框实例4.4.3 向导式对话框使用的注意事项进度条对话框((ProgressMonitorDialog类)4.5 进度条对话框4.5.1 进度条对话框简介4.5.2 进度条对话框实例4.5.3 进度条对话框使用的注意事项4.6 自制界面控件4.6.1 绘图包Draw2D简介4.6.2 一个Draw2D的简单的实例4.6.3 跟我一步步来写个实用的界面控件第5章Eclipse插件开发5.1 Eclipse插件开发概述5.1.1 Eclipse插件开发简介5.1.2 Eclipse插件开发的优势和不足5.2 插件的Hello World5.2.1 使用向导一步步创建5.2.2 以空白项目为基础手工创建5.2.3 构建插件项目时的注意事项5.3 常用插件扩展点实战(plugin.xml)5.3.1 扩展点简介5.3.2 在Eclipse中加入一个透视图5.3.3 往透视图中加入视图(views)5.3.4 如何在两个视图之间的实现事件监听5.3.5 主菜单(actionSets)5.3.6 编辑器(editors)5.3.7 首选项和属性(preferencePages)5.3.8 帮助(contexts)5.3.9 编写扩展点的注意事项5.4 Eclipse插件开发项目的国际化5.4.1 国际化简介5.4.2 创建一个国际化项目5.4.3 使用Eclipse的向导功能进行国际化5.4.4 国际化的注意事项5.5 为项目制作帮助5.5.1 帮助简介5.5.2 项目帮助的制作实例5.5.3 帮助中的高级特性的使用5.6 项目打包与发行5.6.1 插件项目的打包与发行5.6.2 应用程序项目的打包与发行报表::用POI包与MS Office交互第6章报表6.1 POI概述6.1.1 POI简介6.1.2 POI的下载与安装6.2 将数据导出成Excel的实例6.3 更多高级的用法6.3.1 设置页眉页脚6.3.2 浮动文字框6.3.3 冻结和分割窗6.3.4 在表中画图6.3.5 打印的相关设置第7章项目实战:一个实际Eclipse插件项目项目实战:7.1 项目概述7.1.1 项目简介7.1.2 项目的总体构思7.2 项目前期7.2.1 项目的需求分析7.2.2 项目的技术选型7.2.3 项目过程控制的管理方案项目的数据建模::基于面向对象的系统分析7.2.4 项目的数据建模项目中期::代码实现7.3 项目中期7.3.1 项目起步7.3.1.1 创建一个空白项目7.3.1.2 创建透视图并加入视图7.3.2 主界面构建主界面构建::导航栏及编辑器(Editor)7.3.2.1 本模块的设计及数据模型7.3.2.2 主体代码的具体实现与程序导读7.3.3 用户管理及权限管理模块7.3.3.1 权限管理的设计及数据模型7.3.3.2 权限管理的设计及数据模型7.3.3.3 主体代码的具体实现与程序导读7.3.4 消息通知模块7.3.4.1 消息通知的设计及数据模型7.3.4.2 主体代码的具体实现与程序导读7.3.5 系统日志模块7.3.5.1 系统日志的设计及数据模型7.3.5.2 主体代码的具体实现与程序导读7.3.6 报表模块7.3.6.1 系统日志的设计及数据模型7.3.6.2 主体代码的具体实现与程序导读7.4 项目的后期完善7.4.1 创建系统的首选项设置7.4.2 创建帮助对整个项目进行国际化((英、中、繁)7.4.3 对整个项目进行国际化7.4.4 打包和发行第1篇 SOAP的HelloWord实例1.1 前言1.12005-3-2公司开会并分给我一个任务:写一个程序从福建移动的BOSS系统取出一些相关数据。
eclipse插件开发入门及常用组件.
Eclipse插件开发入门.Eclipse最有魅力的地方就是它的插件体系结构。
在这个体系中重要的概念是扩展点(extension points)。
扩展点就是在软件开发过程中暴露出来的接口。
每一个插件都是在现有的扩展点上开发的,并可能还留有自己的扩展点,以便在这个插件上继续开发。
简介Eclipse 平台是IBM向开发源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数为4 000万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的、可扩展的体系结构。
Eclipse 的价值是它为创建可扩展的集成开发环境提供了一个开放源码平台。
这个平台允许任何人构建与环境和其他工具无缝集成的工具。
工具与Eclipse无缝集成的关键是插件。
除了小型的运行时内核之外,Eclipse中的所有东西都是插件。
从这个角度来讲,所有功能部件都是以同等的方式创建的。
由于有了插件,Eclipse系统的核心部分在启动时要完成的工作十分简单:启动平台的基础部分和查找系统的插件。
整个Eclipse体系结构就像一个大拼图,可以不断地向上加插件,同时,在现有插件上还可以再加插件。
开发“Hello,world”插件创建插件最简单的方法是使用Eclipse中专门为开发插件而设计的插件PDE(Plug-in Development Environment)。
PDE 和 Java Development Tooling(JDT)IDE是 Eclipse 的标准扩展。
PDE 提供了一些向导可以帮助创建插件。
下面的“Hello,world”插件将通过PDE进行开发。
下面是创建一个简单插件的操作步骤。
(1)运行Eclipse。
单击Eclipse的“File”→“New”→“Other”菜单项,在弹出的对话框中选择Select对话框左边的Plug-in Development向导。
如图1所示,选择Plug-in Project。
Eclipse插件开发
自定义扩展点
Eclipse插件
简单的插件实例
这里我们建一个空的插件项目,写 一简单的扩展编辑器的插件,具体 步骤我会演示给大家看。 操作ing
图形编辑框架GEF
用GEF编写的流程编辑器
图形编辑框架GEF
Eclipse基础结构Ecipse基础结构Eclipse分为五大部分:
Workbench 工作台 Workspace 工作区 Help 帮助系统 Team 团队支持系统 Platform run-time 运行平台
Eclipse基础结构
Platform run-time 运行平台
平台运行库是内核,它在启动时检查已安 装了哪些插件,并创建关于它们的注册表 信息。为降低启动时间和资源使用,它在 实际需要任何插件时才加载该插件。除了 内核外,其他每样东西都是作为插件来实 现的。
图形编辑框架GEF
Control 控制器
在GEF的MVC结构里,控制器(Control)是模型与视 图之间的桥梁,也是整个GEF的核心。它不仅要监 听模型的变化,当用户编辑视图时,还要把编辑结 果反映到模型上 。 在GEF中,控制器是由一组EditPart对象共同组成的, 每一个模型对象都对应一个EditPart对象。应用程序 中需要有一个EditPartFactory对象负责根据给定模 型对象创建对应的EditPart对象,这个工厂类将在创 建模型时被调用 。
图形编辑框架GEF
View 视图
视图(View)是模型图形方式的表现,它以图形的方 式展示模型。 GEF GEF经常使用的Editor是一个 Editor GraphicalEditorWithPalette (GEF提供的Editor,是 EditorPart的子类,具有图形化编辑区域和一个工 具条)的实例,这个Editor使用GraphicalEditViewer 和PaletteViewer这两个视图类,PaletteViewer也是 GraphicalEditViewer的子类(表示选项板视图)。开 发人员要在configureGraphicalViewer()和 initializeGraphicalViewer()这两个方法里对 EditPartViewer进行定制,包括指定它的contents和 EditPartFactory等 。
Eclipse 插件extension 的解析
Eclipse 插件extension 的解析.感觉这个有点象spring 的配置文件.Plugin 就象beans 反正一个插件里面有一个了..然后.这个extension 这个有点意思.这说明是一个扩展点.是的.这个谁都知道.但是,一个扩展点下面,到底有什么,有几个,这个其实是完全没有定义的.<extensionpoint="org.eclipse.ui.newWizards"><categoryname="马codeWizard"id="com.dearmite.eclipse.codegen"></category><wizardname="hf_projectWizard"icon="icons/block--pencil.png"project="true"category="com.dearmite.eclipse.codegen"class="com.dearmite.eclipse.projectgen.wizards.HfProjectC reationWizard"id="com.dearmite.eclipse.projectgen.wizards.ProjectGenNew Wizard"></wizard><wizardname="hf_codeWizard"icon="icons/block--pencil.png"category="com.dearmite.eclipse.codegen"class="com.dearmite.eclipse.codegen.wizards.CodeGenNewWiz ard"id="com.dearmite.eclipse.codegen.wizards.CodeGenNewWizard "></wizard></extension>这个文件,跟下面的是一个效果.<extensionpoint="org.eclipse.ui.newWizards"><categoryname="马codeWizard"id="com.dearmite.eclipse.codegen"></category><wizardname="hf_projectWizard"icon="icons/block--pencil.png"category="com.dearmite.eclipse.codegen"class="com.dearmite.eclipse.projectgen.wizards.ProjectGen NewWizard"id="com.dearmite.eclipse.projectgen.wizards.ProjectGenNew Wizard"></wizard></extension><extensionpoint="org.eclipse.ui.newWizards"><categoryname="马codeWizard"id="com.dearmite.eclipse.codegen"></category><wizardname="hf_codeWizard"icon="icons/block--pencil.png"category="com.dearmite.eclipse.codegen"class="com.dearmite.eclipse.codegen.wizards.CodeGenNewWiz ard"id="com.dearmite.eclipse.codegen.wizards.CodeGenNewWizard "></wizard></extension>就是把这三个东西分别写在三个<extension> 里也是可以运行的.但是,一些开源的插件,他们是按着第二种写法写的..这点是一般的spring的配置文件比不了的了..他们如此的灵活.基本上就是挂上就行.反正,几个标签都是同一个扩展点的..。
2016年度精品--Eclipse插件开发系列--nature
Eclipse插件开发系列--nature:很久没有写插件开发的体会了.网上很多的插件开发的文档,但是大多数都是插件XML介绍,还有就是hello world.这种书不看当然不对,但是看多了.也没什么大用了.写的都是差不多的..哎,看了好几本这样的书,真的是浪费时间了.项目的nature如果有插件要创建项目,或者是在已有项目上增加JA V A特性,这个其实就是在.project 里填加nature先来分析一下.project文件.<?xml version="1.0" encoding="UTF-8"?><projectDescription><name>tomcatplugin</name><comment></comment><projects></projects><buildSpec><buildCommand><name>org.eclipse.jdt.core.javabuilder</name><arguments></arguments></buildCommand><buildCommand><name>org.eclipse.pde.ManifestBuilder</name><arguments></arguments></buildCommand><buildCommand><name>org.eclipse.pde.SchemaBuilder</name><arguments></arguments></buildCommand></buildSpec><natures><nature>org.eclipse.pde.PluginNature</nature><nature>org.eclipse.jdt.core.javanature</nature></natures></projectDescription>其实,这就是一个XML文件,如果说拿着XML文件读入,然后,在nature里加点内容,其实也不难..难的是.eclipse不是一般的XML文件,他完全不能按常理出牌..不然的话,eclipse插件开发,就不用叫插件开发了.直接说JDK开发得了..但是这个文档里面的结构还是相当的有用.因为…..IProject proj = project.getProject();这个就是获得了当前的Project.IProjectDescription description = proj.getDescription();这个就是上面文件里的<projectDescription> 了….至少这里是XML文件,还是eclipse项目的特性,然后写入文件,这个你根本不用去管.反正你一跟踪源码就什么都有了Eclipse.core.resource 的Jar里.String[] prevNatures= description.getNatureIds();这个一看就知道是获得了<natures><nature>org.eclipse.pde.PluginNature</nature><nature>org.eclipse.jdt.core.javanature</nature></natures>这一段了..那么,就可以提供一个完整的函数.public static void addNatureToProject(IProject project, String natureId) throws CoreException {IProject proj = project.getProject(); // Needed if project is a IJavaProjectIProjectDescription description = proj.getDescription();String[] prevNatures= description.getNatureIds();int natureIndex = -1;for (int i=0; i<prevNatures.length; i++) {if(prevNatures[i].equals(natureId)) {natureIndex = i;i = prevNatures.length;}}// Add nature only if it is not already thereif(natureIndex == -1) {String[] newNatures= new String[prevNatures.length + 1];System.arraycopy(prevNatures, 0, newNatures, 0,prevNatures.length);newNatures[prevNatures.length]= natureId;description.setNatureIds(newNatures);proj.setDescription(description, null);}}Eclipse的内部函数还是挺友好的.返回的类型基本上不需要再强制转换.而直接返回了String[]不过这也给增加一个元素带来一点点的麻烦./*** Remove a Nature to a Project*/public static void removeNatureToProject(IProject project, String natureId) throws CoreException {IProject proj = project.getProject(); // Needed if project is a IJavaProjectIProjectDescription description = proj.getDescription();String[] prevNatures= description.getNatureIds();int natureIndex = -1;for (int i=0; i<prevNatures.length; i++) {if(prevNatures[i].equals(natureId)) {natureIndex = i;i = prevNatures.length;}}// Remove nature only if it exists...if(natureIndex != -1) {String[] newNatures= new String[prevNatures.length - 1];System.arraycopy(prevNatures, 0, newNatures, 0, natureIndex);System.arraycopy(prevNatures, natureIndex+1, newNatures, natureIndex, prevNatures.length - (natureIndex+1));description.setNatureIds(newNatures);proj.setDescription(description, null);}}同样,后面的这个函数就是把natureId 的特性删除了.这个也不需要多解释了.财务工作总结ppt[财务工作总结ppt]一、合理安排收支预算,严格预算管理单位预算是学校完成各项工作任务,实现事业计划的重要前提,因此认真做好我校的收支预算责任重大,财务工作总结ppt。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Eclipse插件开发文档记录一、参考网站二、插件开发之基础篇(1)名词翻译有一些名词在翻译的过程中可能会出现歧义,在这里统一一下。
アーキテクチャ=architecture=架构プラットフォーム=platform=平台コンポーネント=component=组件其余的随时补充。
的架构Eclipse被作为java的IDE(集成开发环境)被广泛的应用,但是从本质上看Eclipse是一个整合了各种开发工具的平台。
因此,它采用了可以自由的增加各种功能的插件架构技术。
Eclipse平台的基本架构如图1-1所示。
图1-1 Eclipse的架构在这里,在最底层位置的是作为Eclipse插件架构基干的OSGi运行时。
虽然在早期的Eclipse版本中已经开始使用插件架构了,但是在的时候才首次引入了OSGi。
OSGi是open services gateway initiative的简称、原本是一种为嵌入式硬件开发的,使网络上的服务提供者和使用者交互(結びつける)的注册服务。
Eclipse使用OSGi来进行插件的管理。
OSGi运行时之上所有被配置的组件群都是以插件的方式提供的。
SWT和JFa ce提供了用户接口(User Interface)的API。
由于SWT和JFace并不依赖于Ecl ipse,也有可能被作为类库单独使用。
Eclipse不仅把基本的用户接口作为工作台API(WorkBench API)提供出来,在后面要讲到的工作区(Workspace)内的资源通过资源API(Resource API)的形式也被作为基本API提供出来了。
在这之上构建起了帮助系统以及基于更新管理器的自动更新等功能。
从Eclipse平台的角度看,SWT、JFace、工作台的部分就是EclipseRCP(Ri ch Client Platform)。
EclipseRCP是基于Eclipse的富客户端技术,Eclipse 不仅是一个开发工具,也可以作为一个通用的应用程序平台。
EclipseRCP是Ec lipse平台的子集,同时,Eclipse自身也是一个EclipseRCP的运用实例。
2.扩展点插件为了自身能够对其他插件进行扩展而提出了扩展点的概念。
当要为插件增加功能的时候就可以利用这个扩展点。
在扩展点的基础上,插件之间可以互相连接。
图1-2 使用扩展点进行扩展扩展和扩展点的连接在程序执行时被建立,提供扩展点的插件事先并不知道该扩展点实际被扩展了什么样的行为。
使用扩展点的插件需要在清单文件中像代码1-1那样,使用extension元素声明扩展。
extension元素中的schema由提供扩展点的插件决定,元素中的内容必须按照schema进行书写。
代码1-1 中声明扩展1 2 3<extension point="被使用扩展点的ID">......</extension>像上面这样的扩展点和扩展不断的积累重叠,使得Eclipse平台能够实现各种各样的功能。
Eclipse平台提供的扩展点有增加菜单项增加视图增加编辑器等等,数量非常的多。
本文将以使用频率相对较高的扩展点为中心进行介绍,在Eclipse的帮助中有Eclipse提供的所有扩展点的说明,大家在使用时可以参考。
当然,定义一个新的自制插件是绝对可能的。
扩展点的定义方法会在[扩展点定义]章节中为大家详细介绍。
3.工作台(Workbench)在这里认为看到本文的同学们都曾经用Eclipse做过java的开发。
Eclips e的各个部分的名称大家也许都已经知道了。
为了在以后的文章中统一意识,在这里我们再复习一下。
工作台是Eclipse的整个用户接口的统称。
工作台内的结构见图1-3图1-3 工作台工作台窗口Eclipse的窗口。
通常一个工作台会打开一个窗口,但是也可能一个工作台对应多个窗口。
工作台页面在工作台上打开的每个透视图(用于特定用途的视图、编辑器的布局)和一个页面对应。
可以包含多个视图和编辑器。
菜单栏和一般的GUI应用一样的菜单栏区域。
工具栏和一般的GUI应用一样的工具栏区域。
默认情况下工具栏的右边区域用来显示透视图的列表状态栏通常在画面的最下面显示的区域。
编辑器的光标位置、生成进度状况等根据工作台上的操作内容显示各种信息。
视图作用是提供开发者想要的信息。
可以收到状态栏内,必要时再打开(高速视图)。
基本上一个视图在一个工作台内只能打开一个。
编辑器主要用于文件的编辑。
和视图不同编辑器可以同时打开多个。
对于同一个文件也可以打开多个编辑器。
从插件的代码中访问工作台使用类。
代码1-2说明了从PlatformUI中取得工作台和工作台窗口的代码示例。
代码1-2 使用PlatformUI访问工作台12345678作区和资源API在Eclipse中使用工作区作为开发人员的作业区域。
工作区是在Eclipse启动时指定的一个物理文件夹。
开发人员在Eclipse上生成工程、创建文件等操作都会在工作区指定的文件夹内生成实际的文件。
工作区内的资源在Eclipse内部使用包中定义的虚拟对象进行操作,例如工程是IProject、文件夹是IFolder、文件时IFile。
图1-4 工作区内的资源在插件开发的时候很多情况都会使用到工作区内的文件或者文件夹。
这时就可以使用这些对象。
对工作区的访问需要使用。
代码1-3是利用IWorkspaceRoot,去的工作区内的工程的代码示例代码1-3 使用ResourcesPlugin访问工作区12etRoot();34成插件工程通过选择[文件]->[新建]->[工程...]启动[新工程(New Project)]向导。
在插件开发的时候我们就不能选择通常的java工程了,要选择新建一个插件工程。
选择[插件工程(Plug-in Project)]后点击[下一步(Next)](图2-1)。
下一步,输入一个适当的项目名(图2-2)。
习惯上项目名和插件的ID是相同的。
插件ID和java包的命名方式相同,必须一个世界范围唯一的名称。
在这里用作为项目名称(=插件ID)。
点击[下一步(Next)]。
图2-1 生成插件工程图2-2 输入插件信息输入[插件ID]、[插件版本]、[插件属性(插件作者)](图2-3)等信息。
[插件ID]会被自动设成之前输入的[工程名]。
没有其他特别的设定的话继续点击[下一步(Next)]。
图2-3 输入生成工程必要的信息图2-4 模板选择图2-5 输入模板信息根据选择的模板生成的插件在(图2-5)的画面可以修改一些信息。
如果没有特别需要设定的地方点击[完成(Finish)],生成工程。
PDE透视图插件工程生成后,就会切换到PDE(插件开发)透视图。
工程此时根据选择的[Hello,World]模板生成了插件的源代码,并且打开了manifest编辑器。
图2-6 PDE(插件开发)透视图2. 插件的动作接下来我们看一下插件的动作。
manifest编辑器的[概要]页面右侧[启动E clipse应用(Luanch an Eclipse application)](图2-7)。
点击后,会启用一个新的Eclipse实例。
这个新的实例被称为[运行时工作台]。
运行工作台可以以嵌入当前正在开发的插件的状态启动,以使开发者可以对插件的动作进行确认。
图2-7 启动运行时工作台启动的运行时工作台,会在菜单栏上增加一个新的菜单项。
这个菜单项就是插件的代码追加上去的。
在工具栏上也增加了一个相应的按钮。
工具栏上的按钮和菜单项目效果相同,都会出现一个[Hello,Eclipse Worl d]的对话框。
Eclipse版的Hello World就完成了。
确认完这些动作后,就可以关闭当前的运行时工作台了,咱们在下个小节的讲解中还要去参考插件工程的代码呢~图2-8 示例中新增的菜单项和工具栏按钮以及相应的动作和一个插件包含和两个配置文件。
是OSGi的handler配置文件,记录了插件ID、名称、作者、和其他插件的依赖关系等。
记录了插件的扩展和扩展点的定义等信息。
以前由于还没有采用OSGi技术,插件的所有信息都记录在里。
所以应用在以前版本的插件如果要应用于和以后版本时要注意遵守OSGi的配置文件定义规范。
3. PDE的功能PDE(插件开发环境·Plugin Development Enviromment)提供了插件开发的各种功能。
因为插件的开发使用java语言,所以也会使用到java编码工具J DT。
Manifest编辑器PDE提供的功能中最重要的就是Manifest编辑器。
编辑器可以为插件的两个配置文件提供图形化的编辑功能。
(图2-9)编辑器的配置项目非常多,可以通过编辑器下面的tab页切换设定画面。
图2-9 Manifest编辑器表1 Manifest编辑器各tab页页面说明Overview可以设定插件的概要信息。
生成用于发布的文档以及启动运行时工作台。
Dependencies设定插件间的依赖关系。
Runtime可以设置导出包和ClassPath。
Extensions管理当前插件对扩展点的扩展。
Extension Points管理当前插件的扩展点。
Build生成工程时的各种设定。
显示的源代码显示的源代码显示的源代码在Overview以外的tab页上部会显示一些快捷键按钮,使用这些按钮也可以进行启动运行时工作台,导出等操作。
图2-10 编辑器上部下面介绍一下PDE题供的几种视图。
在[Window]->[Show View]中可以找到没有被显示的视图。
[插件(Plug-ins)]视图所有的插件列表,包含当前工作区内正在开发的插件。
打开插件节点可以显示插件下包含的资源,但是以jar包提供出来的插件就显示不出来了。
在插件节点上点击右键选择[打开依赖关系(Open Dependencies)]可以打开后面要介绍的[依赖关系]视图,表现插件间的依赖关系。
右键菜单中也可以把选中的插件作为一个工程引入到当前工作区内。
[依赖关系(Plug-in Dependencies)]视图表现了插件间的依赖关系。
可以分别表示当前插件依赖的插件和依赖当前插件的插件。
[插件注册(Plug-in Registry)]视图当前工作台加载的所有插件列表。
打开插件节点,显示插件提供的扩展和扩展点、依赖关系等。
[错误Log(Error Log)]视图错误Log视图虽然不是PDE提供的功能,但是在插件开发的时候非常有用。
它可以表现当前工作台内发生的错误,并且在错误上双击既可以导向到错误发生的地方。
Plugin-in Selection Spy同时按下alt+shift+F1Plugin-in Selection Spy是从开始加入的新功能,能够显示当前焦点所在的编辑器、视图、向导、对话框等的内部信息。