Eclipse插件開發(fā)實(shí)現(xiàn)控制臺(tái)輸出信息的方法
進(jìn)行Eclipse插件開發(fā)時(shí),有時(shí)需要為插件開發(fā)自己的控制臺(tái),以便在必要輸出提示信息,本文介紹進(jìn)行Eclipse插件開發(fā)時(shí),如何實(shí)現(xiàn)自己的控制臺(tái)。
1. 擴(kuò)展控制臺(tái)擴(kuò)展點(diǎn)。
對(duì)org.eclipse.ui.console.consoleFactories
擴(kuò)展點(diǎn)進(jìn)行擴(kuò)展,并填寫必要的信息,比如label,class等。如下圖。
2. 實(shí)現(xiàn)ConsoleFactory類。需要加給工程加入org.eclipse.ui.console_3.4.0.v20090513.jar。版本可以不同。
package project; import org.eclipse.ui.console.ConsolePlugin; import org.eclipse.ui.console.IConsole; import org.eclipse.ui.console.IConsoleFactory; import org.eclipse.ui.console.IConsoleManager; import org.eclipse.ui.console.MessageConsole; public class ConsoleFactory implements IConsoleFactory { private static MessageConsole console = new MessageConsole("", null); static boolean exists = false; /** * 描述:打開控制臺(tái) **/ public void openConsole() { showConsole(); } /** * 描述:顯示控制臺(tái) **/ private static void showConsole() { if (console != null) { // 得到默認(rèn)控制臺(tái)管理器 IConsoleManager manager = ConsolePlugin.getDefault() .getConsoleManager(); // 得到所有的控制臺(tái)實(shí)例 IConsole[] existing = manager.getConsoles(); exists = false; // 新創(chuàng)建的MessageConsole實(shí)例不存在就加入到控制臺(tái)管理器,并顯示出來 for (int i = 0; i < existing.length; i++) { if (console == existing[i]) exists = true; } if (!exists) { manager.addConsoles(new IConsole[] { console }); } // console.activate(); } } /** * 描述:關(guān)閉控制臺(tái) **/ public static void closeConsole() { IConsoleManager manager = ConsolePlugin.getDefault() .getConsoleManager(); if (console != null) { manager.removeConsoles(new IConsole[] { console }); } } /** * 獲取控制臺(tái) * @return **/ public static MessageConsole getConsole() { showConsole(); return console; } }
3.實(shí)現(xiàn)向控制臺(tái)輸出信息。
/** * 向控制臺(tái)打印一條信息,并激活控制臺(tái)。 * @param message * @param activate * 是否激活控制臺(tái) **/ public static void printToConsole(String message, boolean activate) { MessageConsoleStream printer = ConsoleFactory.getConsole() .newMessageStream(); printer.setActivateOnWrite(activate); printer.println("提示:" + message ); }
當(dāng)需要向控制臺(tái)輸出信息時(shí),只需要調(diào)用printToConsole()
函數(shù)即可。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- Eclipse引用XSD實(shí)現(xiàn)XML配置文件提示標(biāo)簽的方法
- SpringBoot thymeleaf eclipse熱部署方案操作步驟
- eclipse下整合springboot和mybatis的方法步驟
- Android源碼導(dǎo)入Eclipse步驟詳解
- IDEA導(dǎo)入eclipse項(xiàng)目并且部署到tomcat的步驟詳解
- MyEclipse+Tomcat配置詳解(圖文)
- Eclipse/MyEclipse轉(zhuǎn)IntelliJ IDEA完全攻略(圖文)
- 在Eclipse中部署Spring Boot/Spring Cloud應(yīng)用到阿里云
- Eclipse運(yùn)行android項(xiàng)目報(bào)錯(cuò)Unable to build: the file dx.jar was not loaded from the SDK folder的解決辦法
- 在Eclipse中更改maven項(xiàng)目名的方法
相關(guān)文章
Java簡(jiǎn)單數(shù)據(jù)加密方法DES實(shí)現(xiàn)過程解析
這篇文章主要介紹了Java簡(jiǎn)單數(shù)據(jù)加密方法DES實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Spring MVC中基于自定義Editor的表單數(shù)據(jù)處理技巧分享
Spring MVC中基于自定義Editor的表單數(shù)據(jù)處理技巧。需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-12-12Java中Comparable與Comparator的區(qū)別解析
這篇文章主要介紹了Java中Comparable與Comparator的區(qū)別解析,實(shí)現(xiàn)Comparable接口,重寫compareTo方法,一般在實(shí)體類定義的時(shí)候就可以選擇實(shí)現(xiàn)該接口,提供一個(gè)默認(rèn)的排序方式,供Arrays.sort和Collections.sort使用,需要的朋友可以參考下2024-01-01Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解
這篇文章主要介紹了Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08SpringBoot配置自定義攔截器實(shí)現(xiàn)過程詳解
在系統(tǒng)中經(jīng)常需要在處理用戶請(qǐng)求之前和之后執(zhí)行一些行為,例如檢測(cè)用戶的權(quán)限,或者將請(qǐng)求的信息記錄到日志中,即平時(shí)所說的"權(quán)限檢測(cè)"及"日志記錄",下面這篇文章主要給大家介紹了關(guān)于在SpringBoot項(xiàng)目中整合攔截器的相關(guān)資料,需要的朋友可以參考下2022-10-10Java反射機(jī)制,如何將一個(gè)實(shí)體類所有字段賦值為null
這篇文章主要介紹了Java反射機(jī)制,如何將一個(gè)實(shí)體類所有字段賦值為null,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03