搜尋
首頁資料庫mysql教程Eclipse插件开发之新手入门_MySQL

Eclipse插件开发之新手入门_MySQL

Jun 01, 2016 pm 02:11 PM
eclipse使用開發我們外掛標識專案

Eclipse

  现在在Internet上已经可以见到不少的Eclipse插件开发的入门文章,这里我写本文的目的主要是将我自己的体会和最开始的学习告诉给大家。 同时也希望本文能使用最为简单的方法来让大家了解开发Eclipse插件的基础。需要注意的是,要学习Eclipse的插件开发,你需要:

  会使用Eclipse来开发Java应用程序

  了解插件这个词的概念

  了解一些XML的知识 本文是一个入门的文章,只是向大家说明开发一个插件的简单步骤,同时了解在开发插件时涉及到的技术面会有哪些。

  Eclipse SDK概述

  我们通常使用的Eclipse也就是我们这里所说的Eclipse SDK,这个SDK中包括了很多的内容,如下图所示:

Eclipse插件开发之新手入门_MySQL



  运行时核心(Eclipse Platform) - SDK必须一个Eclipse Platform,它自身不具有任何对最终用户有意义的功能, 它是一个加载所有插件的基础平台。也就是Eclipse的运行时最小集合了。

  Java 开发工具(JDT) - 我们所有的有关Java的开发部分都是由这个插件来完成了,它形成了对于Java最为基础的编辑、 编译、运行、调试、发布的环境。

  插件开发者环境(PDE) - 开发插件的插件,我们如果要开发插件哪么我们就会发现所有的工作环境都是由它来提供的。 它提供了用来自动创建、处理、调试和部署插件的工具。

  我们将来要开发的插件都是由平台来加载和运行,而PDE则是开发插件的开发环境,JDT则是开发插件时的Java代码的开发环境。

  创建插件项目

  设置引用项目

  开发插件时需要大量的外部库,这些外部库主要是现有的Eclipse中各个插件所提供的库。 为了开发方便,我们先将这些外部库由一个项目统一引用。

  从资源透视图中,使用文件>导入...>外部插件和段。
  在下一步中选择抽取源归档并在项目中创建源文件夹。
  到显示称为选择的屏幕,选择 org.eclipse.ui,然后单击完成按钮。

  创建项目

  在Eclipse需要创建一个空的插件项目,为了让我们更好的理解插件中各个文件的来源,我们从一个空白的插件项目开始:

  1) 打开新建项目...向导(文件>新建>项目...)并从插件开发类别中选择插件项目。

  2) 将com.huangdong.examples.helloworld用作项目的名称。缺省情况下,向导还会将com.huangdong.examples.helloworld设置为标识。

  3) 最终,确保在插件代码生成器页面上选择了创建空白插件项目。

  4) 当询问您是否想切换到“插件开发”透视图时,回答是。

  5) 选择com.huangdong.examples.helloWorld项目并打开属性对话框。

  6) 在Java构建路径属性中,选择项目选项卡,并选择项目org.eclipse.ui。这些包含了项目需要的导入类。

  7) 重建项目。
   创建一个插件内容

  创建一个新的小视图

  下面我们为该项目加入一个很简单的视图:

  1) 在项目的src目录下创建包com.huangdong.examples.helloworld。

  2) 在此包中创建称为HelloWorldView的新类其超类为org.eclipse.ui.part.ViewPart。

  在HelloWorldView中加入以下代码:

  package com.huangdong.examples.helloworld;

  import org.eclipse.swt.SWT;
  import org.eclipse.swt.widgets.Composite;
  import org.eclipse.swt.widgets.Label;
  import org.eclipse.ui.part.ViewPart;

  public class HelloWorldView extends ViewPart {

  Label label;

  public void createPartControl(Composite parent) {
  label = new Label(parent, SWT.WRAP);
  label.setText("Hello World");
  }

  public void setFocus() {}
  }

  我们为该类定义了一个变量lable,在createPartControl方法中初始化并设置了一个显示的字符串。

  护展扩展点

  让Eclipse添加这个视图,需要扩展org.eclipse.ui.views扩展点。所有的这些需要在plugin.xml中进行描述。该清单文件描述插件,包括插件的代码所在的位置以及正在添加的扩展。

  将以下内容复制到plugin.xml中:

  <?xml version="1.0" encoding="UTF-8"?>
  <plugin id="com.huangdong.examples.helloworld"
  name="com.huangdong.examples.helloworld"
  version="1.0.0"
  provider-name="HuangDong">

  <runtime>
  <library name="helloworld.jar"/>
  </runtime>
  <requires>
  <import plugin="org.eclipse.ui"/>
  </requires>

  <extension point="org.eclipse.ui.views">
  <category
  name="Hello"
  id="com.huangdong.examples.helloworld.hello">
  </category>
  <view
  name="Hello Greetings"
  category="com.huangdong.examples.helloworld.hello"
  class="com.huangdong.examples.helloworld.HelloWorldView"
  id="com.huangdong.examples.helloworld.helloworldview">
  </view>
  </extension>

  </plugin>


  在plugin域中定义了插件的名称、标识和版本。 同时在runtime域中定义了插件代码将打包于helloworld.jar文件中。 在requires域中定义了该插件所要使用的依赖插件,由于我们要使用SWT API和工作台所以列示了org.eclipse.ui。 最后,在extension中说明了要们要扩展org.eclipse.ui.views扩展点。 首先我们在category中定义了视图的类别,在工作台的显示视图对话框中,可以使用类别来将相关的视图集中在一起。我们定义的类别名为“Hello”。 同时也定义了我们的视图,名为“Hello Greetings”,这个视图将会显示在“显示视图”对话框和视图的标题栏中,这里我们还通过class标识来说明了实现这个视图的最终类。

  通过plugin.xml的定义,Eclipse才会真正的找到插件可以做的行为,以及这些行为最终实现的具体Java类。

  在插件清单文件中使用了许多标识。 个别扩展点通常会定义需要标识的配置参数(例如,以上用于视图扩展点的类别标识)。 我们还要定义插件标识。通常,应该对所有标识都使用 Java 包名前缀,以便确保所有已安装的插件都是唯一的。

  在前缀后面使用的特定名称完全由您自己决定。 然而,如果插件标识前缀刚好与其中一个包的名称相同,则应该避免在该包中使用类名。 否则,将很难分辨您正在查看标识名还是类名。

  还应该避免对不同的扩展配置参数使用相同的标识。 在上述清单中,已经使用了公共标识前缀(com.huangdong.examples.helloworld),但是,我们的所有标识都是唯一的。 此命名方法可以帮助我们阅读文件并了解哪些标识是相关的。

  运行和测试插件

  运行插件是一件很简单的事,这些在PDE中给我们提供了很好的支持。 只需要在菜单中选择运行>运行为>运行时工作台,在运行时会弹出一个重复插件的提示框,可以按确定跳过,不必在意。 这样会启动一个已经安装好插件的Eclipse。

  启动后在菜单中选择窗口>显示视图>其它,在显示视图对话框中会有一个分类为Hello,点开Hello分类会看到Hello Greetings,选择后点确定按钮。在最下面的视图中可以见到以下界面:

Eclipse插件开发之新手入门_MySQL


  到这里,如果你看到了这个图,哪么恭喜你,你的第一个Eclipse插件成功运行了。



陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
MySQL如何處理數據複製?MySQL如何處理數據複製?Apr 28, 2025 am 12:25 AM

MySQL通過異步、半同步和組複製三種模式處理數據複製。 1)異步複製性能高但可能丟失數據。 2)半同步複製提高數據安全性但增加延遲。 3)組複製支持多主複製和故障轉移,適用於高可用性需求。

您如何使用解釋性語句分析查詢性能?您如何使用解釋性語句分析查詢性能?Apr 28, 2025 am 12:24 AM

EXPLAIN語句可用於分析和提升SQL查詢性能。 1.執行EXPLAIN語句查看查詢計劃。 2.分析輸出結果,關注訪問類型、索引使用情況和JOIN順序。 3.根據分析結果,創建或調整索引,優化JOIN操作,避免全表掃描,以提升查詢效率。

您如何備份並還原MySQL數據庫?您如何備份並還原MySQL數據庫?Apr 28, 2025 am 12:23 AM

使用mysqldump進行邏輯備份和MySQLEnterpriseBackup進行熱備份是備份MySQL數據庫的有效方法。 1.使用mysqldump備份數據庫:mysqldump-uroot-pmydatabase>mydatabase_backup.sql。 2.使用MySQLEnterpriseBackup進行熱備份:mysqlbackup--user=root--password=password--backup-dir=/path/to/backupbackup。恢復時,使用相應的命

MySQL中慢速查詢的常見原因是什麼?MySQL中慢速查詢的常見原因是什麼?Apr 28, 2025 am 12:18 AM

MySQL慢查詢的主要原因包括索引缺失或不當使用、查詢複雜度、數據量過大和硬件資源不足。優化建議包括:1.創建合適的索引;2.優化查詢語句;3.使用分錶分區技術;4.適當升級硬件。

MySQL中有什麼看法?MySQL中有什麼看法?Apr 28, 2025 am 12:04 AM

MySQL視圖是基於SQL查詢結果的虛擬表,不存儲數據。 1)視圖簡化複雜查詢,2)增強數據安全性,3)維護數據一致性。視圖是數據庫中的存儲查詢,可像表一樣使用,但數據動態生成。

MySQL和其他SQL方言之間的語法有什麼區別?MySQL和其他SQL方言之間的語法有什麼區別?Apr 27, 2025 am 12:26 AM

mysqldiffersfromothersqldialectsinsyntaxforlimit,自動啟動,弦樂範圍,子征服和表面上分析。 1)MySqluessLipslimit,whilesqlserverusestopopandoraclesrontersrontsrontsrontsronnum.2)

什麼是mysql分區?什麼是mysql分區?Apr 27, 2025 am 12:23 AM

MySQL分區能提升性能和簡化維護。 1)通過按特定標準(如日期範圍)將大表分成小塊,2)物理上將數據分成獨立文件,3)查詢時MySQL可專注於相關分區,4)查詢優化器可跳過不相關分區,5)選擇合適的分區策略並定期維護是關鍵。

您如何在MySQL中授予和撤銷特權?您如何在MySQL中授予和撤銷特權?Apr 27, 2025 am 12:21 AM

在MySQL中,如何授予和撤銷權限? 1.使用GRANT語句授予權限,如GRANTALLPRIVILEGESONdatabase_name.TO'username'@'host';2.使用REVOKE語句撤銷權限,如REVOKEALLPRIVILEGESONdatabase_name.FROM'username'@'host',確保及時溝通權限變更。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。