openfire运行ant命令控制台中文乱码问题

article/2025/11/11 13:36:06

最近项目要使用openfire来进行插件开发,下载openfire源码导入工程后,运行源码的build目录下的build.xml中的ant命令,其中run命令是启动openfire服务器,结果控制台输出乱码,如图所示:

   run命令的原始ant脚本是:

<!-- run =================================================================================== --><target name="run" description="Starts Openfire inline to the build process."><available file="${target.openfireHome}" type="dir" property="openfire.found"/><fail unless="openfire.found"message="Can't find openfire, run 'ant openfire' or specify with -Dtarget.openfireHome."/><condition property="run.debug"value="-Xdebug -Xint -server -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"><isset property="debug"/></condition><property name="run.spawn" value="false"/><java jar="${target.openfireHome}/lib/startup.jar" fork="true" spawn="${run.spawn}"dir="${target.openfireHome}/bin"><jvmarg line="${run.debug} -DopenfireHome=${target.openfireHome}"/></java></target>

通过搜索网上的解决办法,找到两种修改方式解决乱码问题,都是在<java></java>命令中加上一条语句。

<!-- run =================================================================================== --><target name="run" description="Starts Openfire inline to the build process."><available file="${target.openfireHome}" type="dir" property="openfire.found"/><fail unless="openfire.found"message="Can't find openfire, run 'ant openfire' or specify with -Dtarget.openfireHome."/><condition property="run.debug"value="-Xdebug -Xint -server -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"><isset property="debug"/></condition><property name="run.spawn" value="false"/><java jar="${target.openfireHome}/lib/startup.jar" fork="true" spawn="${run.spawn}"dir="${target.openfireHome}/bin"><jvmarg line="${run.debug} -DopenfireHome=${target.openfireHome}"/><jvmarg value="-Dfile.encoding=UTF-8"/><!--<sysproperty key="file.encoding" value="UTF-8" />--></java></target>

即java命令中加上

<jvmarg value="-Dfile.encoding=UTF-8"/> 或者<sysproperty key="file.encoding" value="UTF-8" />任一即可解决。

解决后控制台正常输出中文。






http://chatgpt.dhexx.cn/article/rwKx4HGY.shtml

相关文章

使用Ant打包工具

由于使用java&#xff0c;javac&#xff0c;jar等工具进行编译打包&#xff0c;即繁琐低效又容易出错&#xff0c;因此Ant出现了。Ant的出现就是专门为了打包编译java代码的&#xff0c;使用之前得稍微学一下。Ant的运行起来主要是依靠配置文件(XML格式)&#xff0c;通常命名为…

ant命令征集详解

ANT指令build.xml命令集 1.ANT示例1.0(将指定路径下的文件复制到指定的其他位置) <?xml version"1.0" encoding"UTF-8" ?> <project name"antTest" default"compile" basedir"."><target name"clean…

Ant企业使用(二)------ant命令及使用

上节说到ant的部署安装&#xff0c;下面呢咱们开始介绍下ant命令以及使用&#xff1a;一.ant命令 语法元素说明如下&#xff1a; -help 显示描述ant 命令及其选项的帮助信息 -projecthelp 显 示包含在构建文件中的、所有用户编写的帮助文档。即为各个中description 属性的文…

简单的Ant命令

使用Ant打印一句话 1.最简单的打印方法 新建build.xml文件&#xff0c;在该文件输入一下内容&#xff1a; <project default"main target" name"first project"> <target name"main target"><echo>this is my firt ant pri…

ant使用总结(二):相关命令说明

在ant安装目录的manual目录是ant的说明文档&#xff0c;打开index.xml&#xff0c;点击Using Apache ant有使用说明。 相关命令说明 指定配置文件 执行ant命令&#xff0c;默认使用当前目录下的build.xml&#xff0c;可以通过-f指定配置文件。 示例&#xff1a;ant -f 配置文件…

DatabaseMetaData 获取数据表字段注释内容

使用DataBaseMetaData获取mysql表字段注释 DatabaseMetaData metaData connection.getMetaData(); ResultSet rs null; rs metaData.getColumns(dbName, null, tableName, "%");while (rs.next()) { QueryColumn columnnew QueryColumn(rs.getString…

Spring boot项目中DatabaseMetaData方式获取表字段信息

日常工作中我们可能会遇到一些配置化的功能&#xff0c;比如我们需要根据元数据项动态生成一些模板&#xff0c;比如表格&#xff0c;excel等&#xff0c;这些都需要我获取到数据库表中字段长度、类型、格式等信息。下面就以一个小白的身份和大家分享下自己的实现过程。 背景 …

Java中DataBaseMetaData与ResultMetaData基本使用

java中的DataBaseMetaData与ResultMetaData使用&#xff1a; DataBaseMetaData 类对象通过Connection类对象获取 1&#xff0c; 获取数据库的url 2&#xff0c; 获取用户名 3&#xff0c; 获取有哪些数据库 package com.xzq.jdbc;import com.xzq.dbutils.DbUitl;import java.s…

DatabaseMetaData.getIndexInfo

示例 通过 DatabaseMetaData.getIndexInfo&#xff08;&#xff09; 获取索引信息。 public static void getIndexInfo() throws Exception {Connection conn getConnection();ResultSet rs null;try {DatabaseMetaData dbmd conn.getMetaData();rs dbmd.getIndexInfo(&q…

数据库元数据 DatabaseMetaData

一、元数据介绍 &#xff08;数据库元数据 DatabaseMetaData&#xff09; 数据库元数据指的是"数据库的定义信息。 DataBaseMetaData元数据获取方式 通过Connection.getDatabaseMetaData()方法获得代表DatabaseMetaData元数据的DatabaseMetaData对象。DataBaseMetaData…

DatabaseMetaData类的getTable()、getColumns()方法使用,以及参数的传递问题,针对oracle、mysql、postgres三种数据库进行举例

DatabaseMetaData类 DatabaseMetaData实例的获取获取数据库属性的方法getTable()方法getColumns()方法关于参数一参数二传参问题 DatabaseMetaData类是java.sql包中的类&#xff0c;利用它可以获取我们连接到的数据库的结构、存储等很多信息。如&#xff1a; 1、数据库与用户&a…

数据库之元数据——DatabaseMetaData的getMetaData()方法的简单使用

DatabaseMetaData和ResultSetMetaData就是两个常用的获取数据库元数据相关信息的接口&#xff0c;本文讲解DatabaseMetaData和ResultSetMetaData接口获取元数据的方法。 package com;import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverMa…

DatabaseMetaData的简单使用

在看大佬写的一个导出数据库建标脚本的接口的时候&#xff0c;发现频频用到DataBaseMetaData这个类&#xff0c;之前也没有 用过这个类下的API&#xff0c;记录一下心得用法。 DatabaseMetaData是java.sql包中的接口&#xff0c;利用它可以获取我们连接到的数据库的结构、存储等…

DatabaseMetaData类

DatabaseMetaData类是java.sql包中的类&#xff0c;利用它可以获取我们连接到的数据库的结构、存储等很多信息。如&#xff1a; 1、数据库与用户&#xff0c;数据库标识符以及函数与存储过程。 2、数据库限制。 3、数据库支持不支持的功能。 4、架构、…

数据库之-元数据 DatabaseMetaData 初学

DatabaseMetaData和ResultSetMetaData就是两个常用的获取数据库元数据相关信息的接口&#xff0c;本文讲解DatabaseMetaData和ResultSetMetaData接口获取元数据的方法。 获取数据库的所有表&#xff1a;(以MySQL和Oracle为例&#xff0c;其他类型的数据库接触不过&#xff0c;…

php备忘录模式

CleverCode最近在看备忘录模式。 1 模式介绍 在不破坏封闭的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 2 模式中的角色 1.Originator(发起人)&#xff1a;负责创建一个备忘录Memento&…

设计模式 — 行为型模式 — 备忘录模式

目录 文章目录 目录备忘录模式应用场景代码示例 备忘录模式 备忘录模式&#xff0c;在不破坏封闭的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 简单来说&#xff0c;就是在运行过程中我们…

“备忘录模式”就这么简单

备忘录模式的官方定义&#xff1a; 在不破坏封装性的前提下&#xff0c;获取一个对象的内部状态&#xff0c;并在该对象之外保存这些状态。这样以后就可以通过该对象恢复到原先保存的状态。 大白话说&#xff1a; 一个对象中一般都封装了很多属性&#xff0c;这些属性的值会随…

(18)备忘录模式

&#xfeff;&#xfeff; &#xff08;18&#xff09;备忘录模式 定义&#xff1a;在不破坏封装性的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态 类型&#xff1a;行为类 类图&#xff1a; 我们…

Java设计模式-备忘录模式、备忘录模式应用场景是什么、又怎么使用

继续整理记录这段时间来的收获&#xff0c;详细代码可在我的Gitee仓库Java设计模式克隆下载学习使用&#xff01; 6.11 备忘录模式 6.11.1 定义 又称快照模式&#xff0c;在不破坏封装性的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对象之外保存此状态&am…