国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 如何寫一個(gè)intellij-idea插件,實(shí)現(xiàn)編譯時(shí)修改源代碼的目的

瀏覽:199日期:2024-01-07 18:01:35

問題描述

比如下面這段Java源碼:

String pcName = '$local_pc_name$';System.out.println(pcName);

我希望IDEA編譯后運(yùn)行,輸出的是具體的電腦名,也就是說,在哪臺(tái)機(jī)器編譯,就輸出哪臺(tái)。比如我是在a-pc這臺(tái)電腦上編譯的,就輸出顯示a-pc。

這個(gè)怎么寫插件實(shí)現(xiàn)呢?

PS:1、源碼不修改,也就是保證另一臺(tái)電腦編譯時(shí)也有'$local_pc_name$'這個(gè)標(biāo)記;2、我想寫個(gè)IDEA插件,在編譯時(shí)自動(dòng)處理這樣的字符串。

還煩請(qǐng)大神出手相助一二。

補(bǔ)充:電腦名這個(gè)只是我舉了個(gè)栗子,我的目的是編譯時(shí)替換特定字符串,而且源碼不變。也感謝已經(jīng)回復(fù)的兩位朋友出謀劃策。

問題解答

回答1:

我希望IDEA編譯后運(yùn)行,輸出的是具體的電腦名,也就是說,在哪臺(tái)機(jī)器編譯,就輸出哪臺(tái)。

試試這個(gè)

import java.net.InetAddress;import java.net.UnknownHostException;String hostname = 'Unknown';try{ InetAddress addr; addr = InetAddress.getLocalHost(); hostname = addr.getHostName();}catch (UnknownHostException ex){ System.out.println('Hostname can not be resolved');}回答2:

通過環(huán)境變量設(shè)置

回答3:

AbstractProcessor應(yīng)該使用注解處理器而不是插件。

標(biāo)簽: java
主站蜘蛛池模板: 天柱县| 康马县| 东光县| 常熟市| 忻城县| 浦县| 巢湖市| 塔河县| 科尔| 崇仁县| 峨眉山市| 合江县| 江津市| 山丹县| 阿城市| 武陟县| 平凉市| 宁化县| 莒南县| 阳山县| 海门市| 凭祥市| 临漳县| 剑河县| 浪卡子县| 浠水县| 健康| 襄樊市| 娄底市| 屏边| 永定县| 若尔盖县| 友谊县| 舞钢市| 万州区| 南木林县| 遂川县| 怀远县| 屯门区| 海晏县| 乐平市|