丛林水塘
本帖最后由 丛林水塘 于 2022-1-20 17:13 编辑

开发Spigot插件,遇到了如下问题:
使用Bukkit.getLogger().info(String msg)在控制台输出信息,调用了了ChatColor,事先已经封装了一个函数,功能是替换颜色代码:
  1. public static String translate(String text){
  2.         return ChatColor.translateAlternateColorCodes('&',text);
  3.     }
复制代码
随后我在启动的时候这样写的:
  1. Bukkit.getLogger().info(translate("&a插件已启动!"));
复制代码
应该是亮绿色的对吧,但实际上:
[17:01:01] [Server thread/INFO]: §a插件已启动!

并没有显示出绿色,而是黑底白字还带着颜色代码出来了。
请问为什么无法正确显示颜色?应该如何操作才能让其正确显示?
谢谢!

贺兰兰
Log4j 不能正确处理颜色代码。要想再 Log4j 上显示颜色,请直接使用 ANSI 控制台代码
如果嫌麻烦,则可以使用 Bukkit.getConsoleSender().sendMessage(String) 作为代替,此时颜色代码会被解析

164ebr
你可以安装基础插件就有颜色了

丛林水塘
贺兰兰 发表于 2022-1-20 17:41
Log4j 不能正确处理颜色代码。要想再 Log4j 上显示颜色,请直接使用 ANSI 控制台代码
如果嫌麻烦,则可以使 ...

好的,谢谢!

第一页 上一页 下一页 最后一页