日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 學院 > 開發設計 > 正文

Eclipse入門之使用指南及開發Eclipse插件(2)

2019-11-18 13:42:03
字體:
來源:轉載
供稿:網友

  假如啟動正常,可以進一步嘗試在Eclipse中調試Servlet或jsp程序。下面我們將用Tomcat自帶的Servlet例程HelloWorldExample.java來示范一下如何在Eclipse中調試Sevlet程序。首先要在Java視圖中新建一個Java項目,為了方便,可以直接將項目路徑指定到HelloWorldExmaple程序所在路徑,之后按"Next",進入Java Settings對話框,選擇Libraries標簽,并用Add External JARs按鈕來指定Servlet.jar包的位置。這里直接用了Tomcat中的Servlet.jar包。
  
  最后,點擊"Finish"完成項目的生成。在新生成項目中的default package可以找到HelloWorldExample.java,雙擊打開文件,并可嘗試給HelloWorldExample加上一個斷點(雙擊編輯窗口左側邊界)。之后在外部瀏覽器中輸入http://localhost:8080/examples/servlet/HelloWorldExample,再回過來看Eclipse發生了什么變化,是一個調試窗口呀!在Eclipse中進行的調試操作和絕大多數的IDE大同小異,如設置斷點,單步跟蹤,變量值察看等等,在這里也就不用再詳述了。
  
  Eclipse最有魅力的地方就是它的插件體系結構。在這個體系中重要的概念是擴展點(extension points),也就是為插件提供的接口。每一個插件都是在現有的擴展點上開發,并可能還留有自己的擴展點,以便在這個插件上繼續開發。
  
  由于有了插件,Eclipse系統的核心部分在啟動的時候要完成的工作十分簡單:啟動平臺的基礎部分和查找系統的插件。在Eclipse中實現的絕大部分功能是由相應的插件完成的,比如WrokBench UI插件完成界面的外觀顯示,Resource Management插件完成維護或生成項目或文件等資源治理工作(在下面的第二個例子就會用到這個插件),而Version and Configuration Management (VCM)插件則負責完成版本控制功能,等等。雖然以上提到的每一個功能都是絕大多數IDE環境所必備的功能,Eclipse卻也把它們都做成了插件模式,甚至用來開發Java程序的開發環境(Java development tooling,JDT)也只不過是Eclipse系統中的一個普通插件而已。整個Eclipse體系結構就象一個大拼圖,可以不斷的向上加插件,同時,現有插件上還可以再加插件。下面的插件開發示例就是在WorkBench UI插件中的觀察窗口擴展點上開發的。
  
  本文第一部分介紹過Eclipse的開發界面其中之一就是觀察窗口,它通常配合編輯窗口顯示一些有用的信息,在這里我們只簡單生成一個顯示歡迎信息的觀察窗口,假設新插件的名子叫Welcome。
  
  第一步,先用向導新建一個Java項目。我們可以在菜單欄選擇FileàNew,或用工具欄的向導按鍵,或是在資源窗口用鼠標右鍵菜單中的New,打開向導對話框,然后用缺省方式創建項目。并在項目中建立一個Welcome.java文件,代碼如下:
  
  package com.nidapeng.eclipse.plugin;
  import org.eclipse.swt.widgets.Composite;
  import org.eclipse.swt.widgets.Label;
  import org.eclipse.swt.SWT;
  import org.eclipse.ui.part.ViewPart;
  public class Welcome extends ViewPart {
  Label label;
  public Welcome() {
  }
  public void createPartControl(Composite parent) {
  label = new Label(parent, SWT.WRAP);
  label.setText("Welcome to Eclipse");
  }
  public void setFocus() {
  }
  }
  
  為使這個程序能正常編譯,要配置它的編譯環境,即指定所需的CLASSPATH。在Eclipse中可以用幾種方法,常用的是兩種:第一是在資源窗口或Java包窗口選中該項目,點擊鼠標右鍵,在打開的菜單中選擇屬性(PRoperties),之后在屬性對話框中選擇Java Build PathàLibraries,用Add External JARs功能添加三個包,它們都是Eclipse的現有插件的類包,可以在"你的Eclipse安裝路徑plugins"下面的相應路徑中找到。分別是org.eclipse.core.runtime插件中的runtime.jar,org.eclipse.swt中的swt.jar和org.eclipse.ui中的workbench.jar。第二種指定CLASSPATH的方法是先將以上提到的三個包直接導入到Eclipse中的某下一個項目中。假如導入到和Welcome.java相同的項目中,則無需進一步指定CLASSPATH,否則需要在項目的屬性菜單中選擇Java Build PathàProjects,然后選中這三個包所在的項目。
  
  在plugin.xml中一共有四個主要的標簽:plugin,requires,runtime,extension。其中plugin標簽的屬性提供的是我們要開發的Welcome插件的基本信息,除了name,version,provider-name等,最重要的是id,它要求不能和現有的Eclipse插件id有沖突,因此我們用包名作為插件的id。requires標簽中所列出的是需要的插件,這里我們要用到Eclipse Workbench和SWT API,因此導入了org.eclipse.ui插件。runtime標簽指明的是我們開發的插件所在JAR包的文件名。extension標簽是插件擴展點的信息。org.eclipse.ui.views是Eclipse系統提供的觀察窗口擴展點,我們的例子是一個觀察窗口(View),這表明我們是要在 org.eclipse.ui.views擴展點上進一步開發。
  
  extension中還包括category和view兩個標簽,在后續的啟動Welcome插件步驟中,我們就會知道這兩個標簽的含義。要注重的是category和view標簽的id的唯一性,并且在view的屬性中聲明了Welcome插件的類名。
  
  在Eclipse中為plugin.xml提供了缺省可視化的編輯器,在編寫plugin.xml過程中可以借助這個編輯器完成一些工作。假如你直接錄入了plugin.xml文件源代碼,還可以用這個編輯器校驗你的代碼:假如編輯器不能正確讀入,就表明你的plugin.xml有一些問題。
  
  在確認Weclome.java和plugin.xml都正確無誤之后,可以用Eclipse菜單欄中的EXPort命令將Weclome.java導出為JAR文件,它的名子應該和plugin.xml中runtime聲明的JAR相一致。同時導出plugin.xml。安裝Welcome插件的方法和本文第一部分介紹的安裝Tomcat插件方法是一樣的:首先在"Eclipse的安裝路徑plugins"路徑下面建立一個com.nidapeng.eclipse.plugin路徑,然后將Weclome.jar和plugin.xml拷到這個路徑下。之后必需重新啟動Eclipse,在Eclipse啟動的時候,它會搜索所有在插件路徑下的插件并注冊它們(僅僅是注冊,只有在需要某個插件的時候,Eclipse才會啟動它)。在重新啟動的Eclipse的菜單欄中選擇PerspectiveàShow ViewàOthers,在打開的對話框中我們會找到在plugin.xml中extension的category標簽中聲明的name屬性:Welcome。在Welcome的支結點中包含了view標簽name屬性:Welcome to Eclipse。選中它并確認,Welcome窗口就會顯示在Eclipse Workbench上的某個位置 。假如在執行了以上操作,但沒有顯示新窗口,可以再次打開Show View菜單,此時在菜單中應該有新一頂選擇:Welcome to Eclipse,然后選中它。
  
  上面我們完成了一個觀察窗口的插件,但這個操作過程對開發稍微復雜一些的插件就顯得不太方便了:每次測試都要將代碼打包,發布,再重新啟動Eclipse系統!為此Eclipse提供了一個專門為開發插件而做插件(有點繞嘴):Plug-in Development Environment(PDE)。本文前面曾提到,目前Eclipse的Release或Stable版本缺省提供了這個插件,因此假如安裝的Eclipse是這兩個版本中的一個就可以直接進行下面的步驟。下面我們再用PDE環境開發一個稍微復雜一些的插件。
  
  第一步仍然要新建一個項目,只是在向導中不是用Java項目,而是Plug-in Development中的Plug-in Project。在應用向導生成新項目的時候,要注重兩點:第一是PDE的項目名稱就是plugin的id,因此要保證它的唯一性,這里我們的項目名是com.nidapeng.eclipse.plugin.pde。其次為了進一步說明Eclipse插件的結構,在Plug-in Code Generators中,選擇用向導模板生成一個缺省的插件。
  
  這個用缺省方式生成的插件類對于我們將要的代碼并不是必需的,也可以用生成空插件的方式建立我們的項目,這樣做只是為進一步說明Eclipse的插件結構。項目生成之后,在我們的項目中會包含一個PdePlugin.java文件,它就是以缺省方式生成的插件類。注重到它繼續了AbstractUIPlugin類,而AbstractUIPlugin類實現了org.eclipse.ui.plugin接口。事實上,所有的Eclipse插件都會有一個相應的實現plugin接口的類,這個類將是新插件的主類(類似于有main()函數的Java類),它負責治理插件的生存期。在我們的AbstractUIPlugin繼續子類中,可以用singleton模式來保存在Eclipse中的生成的該插件的第一個也是唯一實例,一般來說,在該繼續子類中也要實現一個getDefault()方法以返回當前插件的實例。而且,當Eclipse首次使用該插件的時候,這個主類將是第一個被調用的類,因此我們也可以在它的代碼中執行一些初始化的工作。而且假如插件需要使用Preferences,Dialogs或Images資源,也可以通過這個類中的相應方法來得到它們的實例,如用其中的getDialogSettings(),getPreferenceStore(),getImageRegistry()方法。
  
  但是象前面提到的,PdePlugin.java對下面的例子并不是必需的,我們不用對它進行任何修改。在我們第一個例子中的Weclome插件,根本就沒有生成AbstractUIPlugin的繼續子類,此時系統會自動為Weclome插件生成一個缺省的主類(類似于Java類構造函數,假如沒有聲明,系統會指定一個默認的構造函數)。下面的代碼是才真正實現了我們新插件的功能,假設這個插件名子是NoticeView:
  
  package com.nidapeng.eclipse.plugin.pde;
  import org.eclipse.core.resources.*;
  import org.eclipse.core.resources.IResourceChangeEvent;
  import org.eclipse.core.runtime.CoreException;
  import java.util.ResourceBundle;
  import org.eclipse.swt.widgets.Label;
  import org.eclipse.swt.widgets.Composite;
  import org.eclipse.ui.part.View

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲福利一区| 日韩精品 欧美| lutube成人福利在线观看| 欧美在线视频二区| 91精品婷婷国产综合久久| 国产一区精品在线| 国产欧美日韩精品综合| 不卡视频一区二区| 欧美1234区| 欧美日韩精品欧美日韩精品一| 国产对白在线| 一级国产黄色片| 一区三区二区视频| 不卡一区2区| 欧美亚洲国产激情| 一区二区在线高清视频| 日韩久久精品成人| 日韩视频 中文字幕| 日韩精品首页| 色99中文字幕| 国产欧美日韩视频| 在线视频色在线| 在线视频日韩欧美| 欧美.日韩.国产.一区.二区| 日韩免费久久| 日韩欧美高清在线视频| 国产日产一区二区三区| 精品熟女一区二区三区| 精人妻一区二区三区| 日韩午夜黄色| 欧洲精品在线一区| 日韩在线三区| 亚洲最大黄色| 亚亚洲欧洲精品| 亚洲一区日韩精品中文字幕| 日韩在线精品| 免费在线播放av| 不卡av免费在线| 国产无遮挡在线视频免费观看| 日韩精品中文字幕第1页| 午夜一区二区三区视频| 九九视频精品免费| 中文字幕在线视频久| 国产日韩精品在线看| 综合激情国产一区| 欧美三级精品| 久本草在线中文字幕亚洲欧美| 快she精品国产999| 中文字幕久久精品| 狠狠色综合色区| 久久手机免费观看| 欧美日韩国产免费| 国产一卡二卡3卡4卡四卡在线| 日韩欧中文字幕| 亚洲免费看av| 91精品国产综合久久蜜臀| 欧美日韩精品区| 日韩av一区二区在线观看| 国产字幕在线看| 欧美不卡视频一区发布| 亚洲黄色片在线观看| 日韩欧美综合| 亚洲国产专区| 日韩手机在线观看视频| 91精品国产91久久久久| 中文字幕精品视频在线| 中文字幕最新精品| 国产999精品在线观看| 欧美日韩精品在线观看| 日韩精品视频在线| 亚洲v中文字幕| 国产成人精品999| 日韩精品视频在线播放| 久久精品欧美日韩精品| 精品视频www| 在线国产99| 婷婷久久综合网| 一本一道综合狠狠老| 一区在线播放视频| 日韩在线一区二区| 亚洲小说春色综合另类网蜜桃| 亚洲第一中文字幕| 中文欧美日韩| 天堂√8在线中文| 国产一区久久| 午夜一区二区三区| 一区二区视频在线| 国产 日韩 欧美 综合 一区| 欧美日韩视频免费播放| av免费在线不卡| 国产不卡视频在线| 亚洲一区精品在线| 中文字幕中文字幕精品| 国产一级片在线| 亚洲va韩国va欧美va精品| 亚洲第一视频网站| 91精品国产99| 视频一区中文字幕国产| 日韩欧美中文第一页| 欧洲精品久久久| 欧美中文字幕视频在线观看| 久久riav| 一区视频在线播放| 久久riav| 国产区高清在线| 中文字幕欧美日韩va免费视频 | 九色蝌蚪视频在线| 久久激情一区| 久久久99精品久久| 欧美日韩高清一区二区| 国产日韩精品在线看| 蜜桃久久久久| 在线看av的网址| 日韩在线高清视频| 精品久久蜜桃| 国产一区久久| 一级国产黄色片| 黄色在线资源| 久久久91精品| 日韩欧美三级| 欧美日韩亚洲视频| 欧美日韩亚洲天堂| www..com日韩| 亚洲深夜福利| 91精品国产综合久久精品app| 日本a口亚洲| 精品久久九九| 色综合久久88色综合天天免费| 国产欧美久久久| 91www成人久久| 三级网站免费观看| 欧美在线亚洲一区| 在线看av的网址| 在线观看国产福利视频| 中文字幕五月欧美| 亚洲成a人片在线www| 日韩一级网站| 九九精品调教| 亚洲一区不卡在线| 欧美亚洲另类制服自拍| a√免费观看在线网址www| 国产久卡久卡久卡久卡视频精品| 精品人妻二区中文字幕| 中文在线不卡视频| 精品av中文字幕在线毛片| 亚洲大胆人体av| 免费中文字幕日韩欧美| 精品国产999| 九九视频精品免费| 欧美变态tickling挠脚心| 尤物av一区二区| 国产一区精品在线| 影音先锋一区二区资源站 | 久久riav| 91久久久久| 免费在线观看国产黄| 精品视频在线视频| 激情久久99| www在线播放| 在线观看91精品国产入口| 国产视频一区三区| 在线日韩欧美| 成人a在线观看| 亚洲国产福利视频| 国产黄色小视频| 日韩午夜一区| 午夜国产视频 | 日韩中文字幕| 精品国内自产拍在线视频| 美国av一区二区| 欧美在线视频一区二区| 亚洲欧洲三级| 五月天久久比比资源色| 亚洲大片免费看| 国产卡1卡2卡三卡在线| 国产久卡久卡久卡久卡视频精品| 国产日韩精品电影| 中文字幕在线精品| 一区在线免费| 99精品人妻国产毛片| 亚洲大片精品永久免费| 国产高清精品在线| 国产视频aaa| 国产香蕉精品视频| 欧美一级二级三级区| 色99中文字幕| 欧美久久在线观看| 欧美综合精品| 日韩一级在线免费观看| 久久99蜜桃精品| 中文字幕99| 欧美三级免费观看| 日韩av一区二区在线观看| 91极品视频在线观看| 亚洲欧美中文字幕在线一区| 国产成人精品三级| 日韩色在线观看| 欧美专区中文字幕| 日韩一级网站| 欧美成人精品在线| 一区二区不卡在线播放| 日韩欧美一二三四区| 中文字幕第一页在线| 日韩三级一区| 在线国产一级| 国内不卡的二区三区中文字幕| 国产无套粉嫩白浆在线2022年| wwww亚洲| 欧美日韩中文字幕在线| 中文字幕久精品免费视频| 午夜精品一区二区三区免费视频| 亚洲一卡二卡在线观看| 一级日韩一级欧美| 欧美久久在线| 国产视频97| 欧美日韩精品高清| 亚洲第一网中文字幕| 国内精品99| 国产日韩在线视频| 999精品网| 亚洲综合视频一区| 亚洲大片精品永久免费| 日韩手机在线观看视频| 国产在线看一区| 婷婷中文字幕在线观看| 欧洲精品在线视频| 顶级网黄在线播放| 欧美日韩第一区日日骚| 视频一区三区| 日韩国产在线观看一区| 一区二区三区视频网站| 日韩精品在线免费播放| 精品久久在线| 一区二区中文字幕在线| aaa大片在线观看 | √新版天堂资源在线资源| 中文字幕在线观看视频www| 欧美中文字幕在线| 国产成人va亚洲电影| 一区二区三区在线播放欧美| 欧美日韩国产一区中文午夜| 中文精品电影| 国产日韩成人精品| 欧美日韩国产首页| 国产三级视频在线播放线观看| 日韩国产欧美在线视频| 亚洲综合日韩欧美| 久久网站免费观看| 1024国产在线| 国产一级免费在线观看| 欧美日韩一级黄| 日韩欧美国产高清| 日韩欧美成人一区二区三区| 日韩精品久久久| 天天在线视频色| 精品在线一区二区三区| 日韩中文字幕在线视频播放| 一区三区二区视频| 91蜜桃在线视频| 在线观看国产一区| 日韩欧美一卡二卡| 欧美日韩国产一二| 中文字幕日韩第一页| av中文资源在线| 国产不卡在线观看视频| 国产婷婷色一区二区三区在线| 欧美日韩国产综合网| 久久视频www| 国产福利在线看| 日韩视频免费直播| 欧美日韩午夜在线| 免费高清视频日韩| 91精品国产自产在线丝袜啪| 国产欧美在线观看| 91日韩中文字幕| 91精品国产免费久久综合| 99中文字幕一区| 欧美日韩在线看| 国产网站av| 一区二区视频免费看| 亚洲一区日韩在线| 亚洲国产欧美91| 深夜福利一区| 日本不卡视频一区| 欧洲精品久久久| 亚洲三级av| 国产一区成人| 色综合天天综合网天天狠天天| 色综合婷婷久久| 99国产成 人 综合 亚洲欧美| 亚洲免费福利视频| 国产免费电影网站入口| 久久婷婷国产| 国产日韩免费| 在线观看91精品国产入口| 国产视频一区三区| 在线综合 亚洲 欧美中文字幕| 日本国产在线视频| 天天综合天天做| 日韩免费高清一区二区| 日韩 欧美 综合| 中文字幕综合在线| 国产123在线| 国产极品嫩模在线视频一区| 欧美1234区| av手机天堂| 国产天堂素人系列在线视频| 欧美日韩成人一区二区| 丰满少妇一区| 一区二区视频国产| av中文资源在线| 91精品在线视频观看| 亚洲欧美视频一区二区三区| 国产999精品在线观看| 在线资源av| 日韩视频在线免费看| 国产导航在线| 中文字幕在线官网| 欧美日韩视频免费播放| 欧美日韩国产一二| 日韩欧美视频一区二区三区四区| 精品在线99| 中文字幕亚洲字幕| 一二三区精品福利视频| www.尤物.com| 久久 天天综合| 日韩视频一区二区在线观看| 国产亚洲污的网站| 日韩国产在线不卡视频| 高清日韩中文字幕| 久久精品久久久久| 国产在线精品日韩| 中文字幕 日韩 欧美| 日韩精品高清不卡| 91精品网站| 日韩久久精品网| 日韩欧美中文字幕一区| 日韩欧美亚洲视频| 亚洲欧洲日韩精品在线| 欧美中日韩在线| 免费视频一区三区| www日韩在线观看| 欧美日韩亚州综合| 99精品免费观看| 午夜一区二区三区视频| 99视频精品全国免费| 不卡中文一二三区| 国产黄色精品| 一区三区二区视频| 精品日韩在线播放| wwwwww国产| 日韩在线视频中文字幕| 91www成人久久| 91精品国产免费久久综合| 精品国产免费观看一区| 一区在线免费| 久久精品久久久久| 亚洲第一精品在线| 国产福利一区在线观看| 在线综合 亚洲 欧美中文字幕| 亚洲一区不卡在线| 国产福利第一页| 91精品国产99| 日本国产在线视频| 日韩在线观看精品| 日韩欧美在线网址| 欧美日韩亚洲系列| 国产福利精品导航| 中文字幕精品在线播放| 999视频精品| 日韩免费精品视频| 天天综合日日夜夜精品| 欧美日韩不卡在线视频| 欧美国产日韩在线播放| 国产日韩精品在线观看| 亚洲乱码中文字幕| 91精品国产经典在线观看| 91日韩中文字幕| 欧美日韩在线观看成人| 日韩精品欧美| 亚洲成年人影院在线| 免费视频最近日韩| 欧洲精品二区| 国产一级片在线| 欧美成人精品在线| a√免费观看在线网址www| 国产一区在线精品| 亚洲高清中文字幕| 欧美婷婷精品激情| 日韩在线 中文字幕| 蜜桃久久久久| 快she精品国产999| 中文在线视频观看| 国产偷久久久精品专区| 日韩一级免费在线观看| 日韩欧美资源站| 欧美日韩在线网站| 日韩视频国产视频| 欧美日韩视频免费看| 久艹在线视频|