在開發(fā)工具上添加自己需要的功能,可以基于eclipse的插件進行擴展以滿足新功能的需要。下面就說說如何在eclipse上如何添加菜單項。
成都創(chuàng)新互聯(lián)公司主營淮陰網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都APP應(yīng)用開發(fā),淮陰h5微信平臺小程序開發(fā)搭建,淮陰網(wǎng)站營銷推廣歡迎淮陰等地區(qū)企業(yè)咨詢
新建eclipse插件工程
工程名自定義一下,我的工程名是com.popmenu.extend
選擇下一步,在這里可以用向?qū)Ыo我們自動生成的,也可以建立完成之后到擴展點自己添加,這里我們選擇默認的模板。
選擇popup模板
點擊下一步
其中Target Object’s Class:這里指定了目標(biāo)對象,就是說在哪里點擊右鍵能夠顯示對應(yīng)的菜單。
Submenu Name:這個是指定你要顯示的菜單在右鍵彈出后的名稱,我們起名叫“構(gòu)建系統(tǒng)”。
Action Label:這個指定了顯示的子菜單的名稱,這里修改為“模板構(gòu)建”。
Java Package Name:這里指定了點擊模板構(gòu)建后的處理類的包名,使用默認。
Action Class:這個是處理類的名稱,改為TemplateAddAction。
Action is enabled for:表示選擇的是單選還是多選,這里用默認。
點擊完成。
生成的項目結(jié)構(gòu)如下:
工作空間、項目、文件夾、文件對應(yīng)的類型接口分別為IWorkspace、IProject、IFolder、IFile。資源相關(guān)
的接口都繼承了IResource接口,由于工作空間并不只是資源的管理者,因此IWorkspace并沒有繼承IResource
接口,為了將工作空間作為資源的管理者這一功能體現(xiàn)出來,抽象出了IWorkspaceRoot 的接口(即工作空間
根目錄),通過IWorkspace的getRoot 就可以得到對應(yīng)的工作空間根目錄。由于工作空間根目錄、項目、文件
夾都是可以容納其他資源的,因此為它們抽取了一個基類接口IContainer。
類的層次結(jié)構(gòu)圖如下:
資源接口的常見方法
(1) IResource
l delete:刪除此資源。
l getFileExtension:返回文件的擴展名。
l getFullPath:返回此資源相對于工作空間根目錄的相對路徑,返回值類型是IPath。
l getLocation:返回此資源在文件系統(tǒng)中的絕對路徑,返回值類型是IPath。
l exists:判斷此資源是否存在。處理資源與使用Java.io.File 處理文件非常相似。IResource只是一個句柄。當(dāng)調(diào)用像getProject、getFolder 這樣的方法時,會將句柄返回給資源,即使指定的資源并不存在。因此在必要的時候要使用exists 方法來確定資源是否存在。
l getParent:得到父資源容器,返回值類型為IContainer。
l getProject:返回此資源所屬的項目,返回值類型為IProject。
l getProjectRelativePath:返回此資源在項目中的相對路徑,返回值類型是IPath。
l getWorkspace:返回此資源所屬的工作空間,返回值類型為IWorkspace。
l isSynchronized:判斷資源是否與文件系統(tǒng)同步。
(2) IContainer
l exists(IPath path):判斷指定的路徑path是否在本容器內(nèi)存在。
l findMember:返回指定路徑的資源,返回值類型為IResource。
l getDefaultCharset:返回此容器內(nèi)資源的默認編碼。
l getFile:返回指定路徑的文件,返回值類型為IFile。
l getFolder:返回指定路徑的文件夾,返回值類型為IFolder。
l members:返回容器下的所有直接資源,返回值類型為IResource[]。
(3) IFolder
l create:創(chuàng)建此文件夾所代表的資源。
l getFile:返回此文件夾下指定路徑下的文件,返回值類型為IFile。
l getFolder:返回此文件夾下指定路徑下的文件夾,返回值類型為IFolder。
(4) IFile
l appendContents:向文件中附加數(shù)據(jù)流,方法中有一個參數(shù)是InputStream類型,要添加的數(shù)據(jù)流就是在此流中。
l create:用數(shù)據(jù)流創(chuàng)建文件,方法中有一個參數(shù)是InputStream類型,要創(chuàng)建的文件的數(shù)據(jù)流就是在此流中。
l getCharset:返回文件的編碼。
l setCharset:設(shè)定文件的編碼。
l getContents:返回文件的流,返回值類型為InputStream。
l setContents:用數(shù)據(jù)流設(shè)定文件的內(nèi)容,方法中有一個參數(shù)是InputStream類型,要設(shè)定的文件的數(shù)據(jù)流就是在此流中。
(5) IWorkspaceRoot
l getProject:返回指定名字的項目,返回值類型為IProject。
l getProjects:返回工作空間中所有的項目,返回值類型為IProject[]。
雙擊plugin.xml,選擇Dependencies,在eclipse的插件項目中如果想添加依賴,必須在此處添加不能通過工程右鍵進行添加,否則會找不到對應(yīng)的jar提示錯誤。因為這里用到了org.eclipse.jdt.core包所以添加。
點擊添加:
然后點擊Extensions出現(xiàn)擴展點的選擇界面。
可以看到我們添加的菜單的內(nèi)容。選中objectContribution將其它objectClass設(shè)置成 org.eclipse.jdt.core.IJavaElement 表示在java工程上邊能夠看到提示菜單,設(shè)置完成后就可以運行一下示例看看效果了。
右鍵選擇工程run as -> eclipse application
文章標(biāo)題:eclipse構(gòu)建自定義菜單的實現(xiàn)
當(dāng)前網(wǎng)址:http://jinyejixie.com/article22/gpgdjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、電子商務(wù)、面包屑導(dǎo)航、品牌網(wǎng)站設(shè)計、網(wǎng)站營銷、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)