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