- 浏览: 536083 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
gaolegao2008:
如果报 is_volum 列名找不到之类的,我是从新部署了一个 ...
spring quartz 定时器报错 -
gaolegao2008:
部署到linux上时,还有一种情况就是mysql数据库区分大小 ...
spring quartz 定时器报错 -
qq123zhz:
yahier 写道 对我有帮助,但我看的一个demo程序,却没 ...
spring quartz 定时器报错 -
qq123zhz:
这个要在eclipse的插件环境下运行的,你不懂eclipse ...
GEF 自动布局 -
qq123zhz:
这个很久了,不记得啥时候写的了
json转为Map
Java项目模型
Eclipse的项目有很多种,包括Java项目、C++项目、C#项目等,每种项目都有自己的特点。我们最常接触到的项目就是Java项目,因此我们重点来讲解一下Java项目模型。
Java模型是用来对与创建、编辑和构建Java程序相关联的对象进行建模的一些类。Java模型类是在org.eclipse.jdt.core中定义的。这些类实现资源的特定于Java的行为,并进一步将Java资源分解成模型元素。
Java模型的继承结构图如图3.13所示。
图3.13 Java模型的继承结构图
IJavaElement的子类接口还有IMethod、IType等,在这里没有全部列出。Java模型中的类结构比较简单,级次也非常少。
下面介绍一下各个接口的主要方法。
(1) IJavaElement
exists:判断元素是否存在。处理Java元素与处理资源对象相似。当使用Java元素时,实际上是在使用某些底层的模型对象的句柄。必须使用exists()来确定元素是否真正存在于工作空间中。
getElementName:返回元素的名称。
getJavaModel:返回其对应的JavaModel,返回值类型是IJavaModel。
getJavaProject:返回元素对应的Java工程,返回值类型是IJavaProject。
getParent:返回父元素,返回值类型是IJavaElement。
getResource:返回元素对应的资源,返回值类型是IResource。
(2) IClassFile
此接口代表编译后的class二进制文件。
isClass:判断是否是Java类。
isInterface:判断是否是接口。
(3) ICompilationUnit
此接口代表Java源文件。
getAllTypes:返回此文件中定义的所有类型,返回值类型是IType[]。一个Java文件中可以定义多个类型。
getPrimary:返回主类型,返回值类型是ICompilationUnit。
(4) IJavaModel
此接口表示根 Java 元素,对应于工作空间。是所有具有 Java 性质的项目的父类。它对于Java项目的作用和IWorkspaceRoot对于IProject的作用相似。
contains:判断是否存在指定的资源。
getJavaProject:返回指定名字的Java项目,返回值类型是IJavaProject。
getJavaProjects:返回所有的Java项目,返回值类型是IJavaProject[]。
getWorkspace:返回所在的工作空间。
(5) IJavaProject
此接口表示Java项目。
IJavaElement findElement(IPath path):返回项目的path路径下的Java元素。
IPackageFragment findPackageFragment(IPath path):返回项目的path路径下的IPackageFragment。
IPackageFragmentRoot findPackageFragmentRoot(IPath path):返回项目的path路径下的IPackageFragmentRoot。
findType:根据一个全名取得此元素的类型,此类有数个重载方法,返回值类型为IType。
getAllPackageFragmentRoots:返回所有的IPackageFragmentRoot,返回值类型是IPackageFragmentRoot[]。
getOutputLocation:返回输出路径,返回值类型是IPath。
getRequiredProjectNames:返回依赖项目,返回值类型是字符串数组。
setOutputLocation:设定输出路径。
(6) IPackageFragment
此接口表示整个包或者包的一部分。
createCompilationUnit:创建一个ICompilationUnit,返回值类型是ICompilationUnit。
getClassFile:返回指定名称对应的IClassFile,返回值类型是IClassFile。
getClassFiles:返回所有的IClassFile,返回值类型是IClassFile[]。
getCompilationUnit:返回指定名称对应的ICompilationUnit,返回值类型是ICompilationUnit。
getCompilationUnits:返回所有ICompilationUnit,返回值类型是ICompilationUnit[]。
getKind:判断此包是源码包还是普通包,返回值是int型,如等于IPackage- FragmentRoot.K_SOURCE则是源文件包,如等于IPackageFragmentRoot.K_BINARY则为普通包。
hasSubpackages:是否有子包。
(7) IPackageFragmentRoot
此接口表示一组包段,并将各段映射至底层资源,它可以是文件夹、JAR或ZIP文件。
createPackageFragment:创建一个IPackageFragment,返回值类型是IPackage- Fragment。
getKind:此包段是源码包段还是二进制包段,返回值类型是int,如果等于IPackageFragmentRoot.K_SOURCE则是源文件包段,如果等于IPackageFragment- Root.K_BINARY则为二进制包段。
getPackageFragment:根据包名返回对应的IPackageFragment。
常用工具类
(1) JavaCore(定义在org.eclipse.jdt.core包下)
JavaCore从Plugin继承,它是JDT插件的生命周期管理器。不过对于第三方插件开发人员来说,它的重要性更多地体现在它提供的一些工具类方法中。
IJavaElement create(IFile file):从文件创建对应的Java元素。
IJavaElement create(IFolder folder):从文件夹创建对应的Java元素。
IJavaProject create(IProject project):得到IProject对应的IJavaProject。
IJavaElement create(IResource resource):从资源创建对应的Java元素。
IJavaModel create(IWorkspaceRoot root):从工作空间根目录得到对应的IJavaModel。
IClassFile createClassFileFrom(IFile file):从文件创建对应的IClassFile。
ICompilationUnit createCompilationUnitFrom(IFile file):从文件创建对应的ICompilationUnit。
style="LINE-HEIGHT: 17.5pt; TEXT-INDENT: 21pt"(2) JavaUI(定义在org.eclipse.jdt.ui包下)
JavaUI中定义了常用的Java插件界面相关的方法。
createPackageDialog:创建一个包选择对话框,返回值是SelectionDialog。
createTypeDialog:创建一个类型选择对话框,返回值是SelectionDialog。
IEditorPart openInEditor(IJavaElement element):用编辑器打开指定的Java元素并返回编辑器实例。
revealInEditor(IEditorPart part, IJavaElement element):在编辑器中定位元素element。
插件开发中经常会碰到一些常用的技巧,掌握这些技巧可以极大地提高插件的开发效率,并且可以减小插件的体积。下面列出一些常见的技巧。
(1) 由一个普通项目得到Java项目
Java项目是一种特殊的项目,需要注意的是IJavaProject并不是从IProject继承的。不能将一个IProject对象强制转换成一个IJavaProject对象,也不能把一个IJavaProject实例赋值给IProject变量。
由IProject项目得到Java项目的方式:
IJavaProject javaPoject = JavaCore.create(IProject);
由IJavaProject得到IProject的方式:
调用IJavaProject的IProject getProject();
(2)得到工作空间中的所有Java项目
我们可以首先得到工作空间中的所有项目,然后逐个进行转换。不过这不免麻烦了一些,下面介绍更好的方式。IJavaModel是所有Java项目的根,通过它就可以得到所有的Java项目:
1. IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
2. IJavaModel jModel = JavaCore.create(root);
3. IJavaProject jProject[] = jModel.getJavaProjects();
(3) 打开Java编辑器并显示Java编译单元的特定成员
代码如下:
4. void showMethod(IMember member) {
5. ICompilationUnit cu = member.getCompilationUnit();
6. IEditorPart javaEditor = JavaUI.openInEditor(cu);
7. JavaUI.revealInEditor(javaEditor, member);
8. }
(4) 在工程下创建一个com.cownew包,并创建一个Hello.java文件
9. IPackageFragmentRoot pkroot = JavaProject
10. .getPackageFragmentRoot(JavaProject.getResource());
11. IPackageFragment pkg = pkroot.createPackageFragment("com.cownew", true,
12. new NullProgressMonitor());
13. pkg.createCompilationUnit("Hello.java", "package com.cownew;", true,
14. new NullProgressMonitor());
(5) 打开【打开类型】对话框
以下代码段使用 JavaUI 类来打开【打开类型】对话框:
15. SelectionDialog dialog = JavaUI.createTypeDialog(parent,
16. new ProgressMonitorDialog(parent),
17. SearchEngine.createWorkspaceScope(),
18. IJavaElementSearchConstants.CONSIDER_ALL_TYPES, false);
19. dialog.setTitle("打开类型");
20. dialog.setMessage("请选择要打开的类型");
21. if (dialog.open() == IDialogConstants.CANCEL_ID)
22. return null;
23. Object[] types = dialog.getResult();
24. if (types == null || types.length == 0)
25. return null;
26. System.out.println(types[0]);
用类似方法还可以创建【打开包】和【打开主要类型】对话框。。
(6) 打包指定的文件
我们写一些工具的时候也许需要把文件打成jar包,然后进行发布到应用服务器等操作,调用JDT提供的类可简化这个操作(用到的打Jar包的类都在org.eclipse.ui.jarpackager下):
27. JarPackageData description= new JarPackageData();
28. IPath location= new Path("C:/cownew.jar");
29. description.setJarLocation(location);
30. description.setSaveManifest(true);
31. description.setManifestMainClass(mainType);
32. description.setElements(filestoExport);
33. IJarExportRunnable runnable=
34. description.createJarExportRunnable(parentShell);
35. new ProgressMonitorDialog(parentShell).run(true,true, runnable);
参数mainType表示Jar包的main类,filestoExport为要打包的文件。
(7) 自动设置Java项目的构建路径
有一些插件会将需要的jar包自动设置到构建路径上,比如使用WTP的新建向导新建web项目的时候就会把web开发需要的jar包自动放入项目的构建路径,使用PDE的“将项目转换为插件项目”功能后项目的构建路径中就增加了插件依赖项的库。那么它们是怎么实现的呢?
Java项目的构建路径有如下几种:源文件夹、二进制库、依赖项目、类路径变量和类路径容器。
图3.14 源文件夹
图3.15 构建依赖项目
图3.16 Jar和类文件夹依赖
每种不同的构建路径都有不同的作用:源文件夹是把源码进行构建的途径,二进制库是导入少量jar包的方式,依赖项目是供多项目分模块开发使用的,使用类路径变量可以避免二进制包的路径依赖,而类路径容器则为大量二进制库的引入提供了方便。
JDT为这些不同的构建路径提供了一个统一的接口:IClassPathEntry,只要调用IJavaProject的setRawClasspath方法就可以为项目设定构建路径。
可以看到setRawClasspath方法需要一个IClasspathEntry数组,数组中的元素就是要设置的每一个构建路径。前面提到的JavaCore类提供了一系列的静态方法来帮助我们生成不同的IClasspathEntry,而无须关注生成的细节。下面来看不同构建路径的添加方式。
① 源文件夹。使用JavaCore.newSourceEntry方法。下面的代码的作用是构造项目MyProject的源文件夹src的类路径条目:
JavaCore.newSourceEntry(new Path("/MyProject/src"));
② 二进制库IClasspathEntry。使用JavaCore.newLibraryEntry 方法。下面的代码就是构造MyProject的类文件lib的类路径条目:
IClassPathEntry libEntry = JavaCore.newLibraryEntry(new
Path("/MyProject/lib"),null, null,false);
以下类路径条目具有源代码连接:
IClassPathEntry libEntry = JavaCore.newLibraryEntry(
new Path("d:/lib/foo.jar"), // jar包路径
new Path("d:/lib/foo_src.zip"), //jar包的源码包的路径
new Path("src"), //源归档根路径
true);
设定关联源代码包有利于代码的跟踪调试。
③ 依赖项目。使用JavaCore.newProjectEntry方法。下面的代码就是构造依赖项目MyFramework:
IClassPathEntry prjEntry = JavaCore.newProjectEntry(new
Path("/MyFramework"), true);
④ 类路径变量。使用JavaCore.newVariableEntry方法。类路径变量对于整个工作空间来说是全局的,并且可以通过 JavaCore 方法 getClasspathVariable 和 setClasspathVariable 来处理。
可能会注册自动的类路径变量初始化方法,当启动工作空间时,通过扩展点 org.eclipse. jdt.core.classpathVariableInitializer来调用该类路径变量初始化方法。
以下类路径条目指示一个库,该库的位置存放在变量HOME中。使用变量SRC_HOME和SRC_ROOT来定义源代码连接:
IClassPathEntry varEntry = JavaCore.newVariableEntry(
new Path("HOME/foo.jar"), //库路径
new Path("SRC_HOME/foo_src.zip"), //源码归档路径
new Path("SRC_ROOT"), //源码归档根路径
true);
JavaCore.setClasspathVariable("HOME", new Path("d:/myInstall"), null);
⑤ 类路径容器。通过 JavaCore的getClasspathContainer和setClasspathContainer两个方法来处理类路径容器。
可能会注册一个自动的类路径容器初始化方法,当需要绑定容器时,通过扩展点 org.eclipse.jdt.core.classpathContainerInitializer来被动地调用类路径容器初始化方法。
以下类路径条目指示系统类库容器:
36. IClassPathEntry varEntry = JavaCore.newContainerEntry(
37. new Path("JDKLIB/default"),false);
38. JavaCore.setClasspathContainer(
39. new Path("JDKLIB/default"),
40. new IJavaProject[]{ myProject },
41. new IClasspathContainer[] {
42. new IClasspathContainer() {
43. public IClasspathEntry[] getClasspathEntries() {
44. return new IClasspathEntry[]{
45. JavaCore.newLibraryEntry(
46. new Path("d:/rt.jar"), null, null, false);
47. };
48. }
49. public String getDescription() {
50. return "Basic JDK library container"; }
51. public int getKind() { return IClasspathContainer.K_SYSTEM; }
52. public IPath getPath() { return new Path("JDKLIB/basic"); }
53. }
54. },
55. null);
我们只要调用相应的方法创建我们的类路径条目就可以了,然后把这些条目组成的数组通过setRawClasspath方法设定到项目中。需要注意的是如果我们只把要添加的类路径条目传入 setRawClasspath方法的话,就会替换原有的项目构建路径,这常常是我们不希望的。可以调用IJavaProject的 readRawClasspath方法读取项目已有的设置,把我们要设置的构建路径添加到它的后面,然后再调用setRawClasspath方法设定新的项目构建路径。
在这个例子中,将要实现一个“为项目添加 lucene支持”的功能,用户在项目上右击,选择菜单中的【为项目添加lucene支持】命令以后,插件就会把lucene的jar包和源码包复制到项目的lib目录下,并且将jar包加入构建路径。如图3.17所示为增加lucene支持前的项目结构。
图3.17 增加lucene支持之前的项目结构
用户在项目上右击,在弹出的快捷菜单中选择【为项目添加lucene支持】命令后的项目结构如图3.18所示。
图3.18 增加lucene支持之后的项目结构
图3.19是项目的构建路径。
图3.19 增加的lucene包
首先新建一个插件工程,并将JDT相关的依赖项加入。然后添加一个org.eclipse.ui.popupMenus的扩展点,如果不熟悉怎么添加,可以使用插件向导中的“弹出菜单”向导。
需要注意contribution的配置,如图3.20所示。
图3.20 contribution的配置
此插件只针对Java项目起作用,因此 objectClass中填入org.eclipse.jdt.core.IJavaProject;adaptable选择true;如果是用向导生成的那么请记住清空nameFilter。下面是核心类ActionAddLucene的实现代码:
56. System.getProperty("file.separator","/");
57. JavaCore.newLibraryEntry(project
58. .getFullPath(), project
59. LUCENESRCJAR).getFullPath(), null,
60. new IClasspathEntry[oldPaths.length + 1];
61. LIB + FILESEPARATOR + LUCENEJAR);
62. LIB + FILESEPARATOR + LUCENESRCJAR);
63. IClasspathEntry entry)
64. e.getMessage(), e));
下面解释一下代码中的重点部分。
65. IClasspathEntry[] oldPaths = javaProject.readRawClasspath();
读取项目原有的构建路径条目。
66. IClasspathEntry luceneLibEntry = JavaCore.newLibraryEntry(
67. project.getFile(LIB + FILESEPARATOR + LUCENEJAR).getFullPath(),
68. project.getFile(LIB + FILESEPARATOR + LUCENESRCJAR).getFullPath(),
69. null, false);
这一句构建lucene的jar包。
第1个参数是二进制jar包的位置,我们的二进制jar包的位置为项目路径下的lib/lucene-1.4.3-src.jar。
第2个参数是jar包对应的源码包的位置。
第3个参数为源码包的根路径,因为有的源码jar包的源码根路径不是jar包的根路径,比如simplejta的源码jar包的格式如图3.21所示。
图3.21 Jar包的结构
对于这种情况就要指定第2个参数为“src”,lucene的源码包的源码根路径就是jar包的根路径,因此我们设置此参数为null。
第4个参数表示是否导出,我们设置为false。
(3) URL luceneLib = Activator.getDefault().getBundle().getEntry(RESOUCELIB + FILE- SEPARATOR + LUCENEJAR);
我们把“lucene-1.4.3.jar”、 “lucene-1.4.3-src.jar”放到我们插件的“resoucelib”目录下,当用户单击【为项目添加lucene支持】的时候要把这两个文件复制到项目的lib目录下,因此需要首先读取插件路径“resoucelib”目录下的这两个jar包。
读取插件路径下的文件时我们使用插件Activator类提供的方法即可,比如如下调用:
就可以读取到插件根目录下的文件“config/my.xml”,返回类型是java.net.URL。
(4) copyURLToFile(luceneLib, project, LIB + FILESEPARATOR + LUCENEJAR);
Activator.getDefault().getBundle().getEntry读取到的文件位置是URL类型的,我们需要把这个URL对应的文件复制到项目的lib下。下面看一下copyURLToFile的主干代码:
URL类有一个openStream可以打开文件的输入流,IFile也有一个接受输入流的create方法用来创建文件,因此我们只需要把url的输入流输出给IFile的create方法即可。
这里我们也可以由url得到其对应的磁盘上的路径,也可以得到IFile对应的磁盘上的路径,然后使用Java IO来进行文件复制操作。但是这样做不仅代码数量变多了,而且由于使用的不是Eclipse的资源管理API,会带来无法自动刷新等问题,因此建议尽量使用Eclipse提供的API来完成此功能。
学习Eclipse插件开发的最好的方式就是研读 Eclipse的源码,而对插件开发者最有参考价值的就是JDT(Java Development Tools)的代码,相信把所有的包研读一遍以后就会成为插件开发的高手了
发表评论
-
eclipse jdt builder的资料
2014-07-11 15:27 947eclipse jdt关于builder的英文资料。。。。 ... -
eclipse 插件开发 Setting the Java build path
2014-06-04 11:00 1224JDT Plug-in Developer Guide & ... -
RCP MessageConsole设置显示的最大行数
2013-09-05 11:34 981MessageConsole.setWaterMarks(5 ... -
RCP FileSystem 文件系统
2013-02-19 10:42 1385public static File toLocalFile ... -
eclipse4.x 去掉quick access
2013-01-11 14:57 4062/** * 去掉quick access * ... -
RCP 分页组件
2012-12-26 16:59 1513http://www.eclipse.org/nebula/w ... -
jdt 核心知识
2012-11-27 21:39 1294jdt官方核心知识...................... ... -
jdt 创建java工程,生成代码,运行main方法
2012-11-27 10:50 2361public static IJavaProje ... -
SWT 隔行换色-自动宽高调整
2012-10-16 17:32 1717** * 创建:ZhengXi 2009-8-4 */ ... -
RCP 为action添加操作进度条
2012-10-16 13:59 1299public class StartAction extend ... -
RCP 视图交互 ISelectionProvider和ISelectionListener,只响应鼠标左键
2012-10-10 18:36 2248有时候一个视图( V ... -
采用jface dataBinding来实现内容填充
2012-07-27 15:42 1203//采用jface dataBinding来实现内容填充 ... -
RCP 在视图中获得首选项修改后的结果
2012-07-27 15:35 1172在视图或者编辑器中加入如下代码: Activator.get ... -
RCP获得eclipse的相关位置
2012-07-24 11:14 1084InternalPlatform.getDefault().g ... -
swt/jface 获取table所有的列的值
2012-07-24 09:24 1441TableItem [] items = table.get ... -
org.eclipse.swt.SWTException: Subclassing not allowed
2012-07-19 15:09 1246org.eclipse.swt.SWTException: S ... -
Job found still running after platform shutdown.
2012-06-29 16:40 1866Job found still running after p ... -
eclipse插件开发 打开指定透视图
2012-06-12 14:08 1450打开透视图 PlatformUI.getWorkbench( ... -
eclipse 插件开发,报错No property tester contributes a property....
2012-06-12 11:29 2126ENTRY org.eclipse.ui.navigator ... -
eclipse插件开发-添加xmlcatalog到plugin Specified Entries
2012-06-06 16:08 1539把自定义的xsd文件添加到eclipse的XML calalo ...
相关推荐
下面将详细介绍Eclipse JDT的使用及其相关知识点。 1. **代码编辑器**:Eclipse JDT的核心功能之一是其集成的Java代码编辑器。它提供了丰富的代码补全、语法高亮、错误检查和快速修复功能。当编写代码时,编辑器会...
标题“org.eclipse.jdt.core_3.2.0.v_671”表明这是一个与Eclipse集成开发环境(IDE)相关的组件,特别是它的Java开发工具(JDT)核心部分。这个版本号“3.2.0.v_671”表示这是JDT核心的特定版本,其中“3.2.0”可能...
根据给定的文件信息,我们可以总结出以下关于Eclipse JDT 2.0插件开发者指南的相关知识点: ### 一、概述 Eclipse JDT(Java Development Tools)2.0 插件开发者指南是一份由OTI(Open Tooling Initiative)编写的...
### Eclipse JDT 用户指南知识点概览 #### 一、引言 本指南旨在为用户提供一个全面的介绍,帮助用户了解如何使用Eclipse JDT(Java Development Tools)进行高效的Java开发。文档由IBM提供,覆盖了从环境搭建到高级...
下面将详细阐述JDT Core的主要组成部分和相关知识点。 1. **JDT Core组件** - **org.eclipse.jdt.core**:这个包定义了描述Java模型的类,包括Java项目、包、源文件、类型等的表示。它提供了访问和操作Java模型...
**JDT核心知识详解** Java Development Toolkit(JDT)是Eclipse IDE中的核心组件,专门用于支持Java开发。它提供了一系列强大的工具和服务,包括代码编辑、语法高亮、自动完成、错误检查、重构以及调试等功能,极...
Java开发工具集(JDT)是Eclipse IDE中的核心组件之一,主要负责Java语言的编辑、语法分析、编译和调试等功能。ASTView是JDT的一部分,它提供了一个图形化的界面来显示Java源代码的抽象语法树(Abstract Syntax Tree...
4.2.7 有关断点的更多知识..... 119 4.2.8 Java异常断点..... 121 4.2.9 将程序与源代码相关联..... 123 4.2.10 热代码替换..... 123 4.3 远程调试...... 124 4.4 练习概述...... 125 4.5 本章小结...... 126 4.6 ...
知识点:Eclipse 快捷方式的创建,桌面右键新建启动器,命令路径设置。 2. 如何显示行号? 选 择 Window->Preferences, 然 后 选 择 General->Editors->Text Editors,把show line numbers 选项勾上。这将在...
"使用Eclipse JDT"表明YAG可能利用了Eclipse Java Development Tools (JDT) 的API来实现其功能,JDT是Eclipse IDE的一部分,提供了强大的Java语言支持。 【标签解析】 "Java"标签表明这个工具与Java编程语言紧密...
在本篇文章中,我们将详细探讨Eclipse语言包的相关知识点。 首先,Eclipse语言包主要包含两部分:用户界面的本地化和文档的本地化。用户界面的本地化意味着将菜单、按钮、对话框等元素的文本翻译成目标语言,使...
8. **团队支持**:Eclipse支持各种版本控制系统,如SVN、Git等,通过`org.eclipse.team`及相关子包实现版本控制功能。 9. **插件开发**:PDE提供了强大的开发工具,如`org.eclipse.pde.api.tools`和`org.eclipse....
总的来说,这个Eclipse自学文档涵盖了Eclipse开发的关键知识点,无论你是初学者还是有经验的开发者,都能从中获得宝贵的学习资源。通过深入学习并实践这些内容,你将能够熟练地运用Eclipse进行各种类型的应用程序...
### Eclipse开发学习笔记知识点解析 #### 一、Eclipse工作台(Workbench) Eclipse工作台是Eclipse提供的集成开发环境的核心部分,旨在为开发者创建一个无缝集成的工具集,以便于管理和导航工作空间资源。它是开发...
Eclipse是一款广泛使用的开源集成...总之,"Eclipse基础教程(中文)"全面覆盖了Eclipse的基础知识,无论你是初学者还是有一定经验的开发者,都能从中受益。通过学习和实践,你将能够熟练运用Eclipse进行高效的软件开发。
本篇将详细探讨Eclipse 3.6中的核心特性,以及与Pydev集成的相关知识。 首先,Eclipse 3.6引入了多项性能优化,提升了启动速度和整体响应性,使得开发者在日常工作中能够更加流畅地使用。同时,它增强了对Java 7的...
下面将详细讨论Eclipse IDE 4.7.3中的关键知识点。 1. **Eclipse IDE架构**:Eclipse基于插件架构,允许开发者通过安装不同的插件来扩展其功能。核心IDE由多个组件组成,如Workbench、Runtime、Plug-in System等,...