Read .XML file

本文提供了一个使用Java读取XML文件的示例代码。通过DocumentBuilderFactory和DocumentBuilder解析XML文件,并获取根元素进行基本操作。
部署运行你感兴趣的模型镜像

package mytools.readfile;

import java.io.File;
import java.io.IOException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.SAXException;

/**
 * This class is used to read .XML file.
 *
 * @author WangJunyu
 */
public class ReadXML {

    private String file = "";
    private Document cfgDoc = null;
   
    public ReadXML(String file) {
       
        this.file = file;
    }
   
    public void excute() throws ParserConfigurationException, SAXException, IOException {
       
        File cfg = new File(file);
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        cfgDoc = db.parse(cfg);
       
        Element doc = cfgDoc.getDocumentElement();
        System.out.println("Test tead XML file: " +
                            doc.getElementsByTagName("copy").getLength());
    }
   
    public static void main(String[] args) {
       
        ReadXML read = new ReadXML("test.xml");
        try {
           
            read.excute();
        }
        catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

您可能感兴趣的与本文相关的镜像

ComfyUI

ComfyUI

AI应用
ComfyUI

ComfyUI是一款易于上手的工作流设计工具,具有以下特点:基于工作流节点设计,可视化工作流搭建,快速切换工作流,对显存占用小,速度快,支持多种插件,如ADetailer、Controlnet和AnimateDIFF等

你遇到的错误是: ``` sed: can't read pom.xml: No such file or directory ``` ### 🔴 原因:你当前在 `/opt/openfire` 目录下,但 `pom.xml` 文件并不在这里! 你之前操作的是 **Openfire REST API 插件项目**,它的目录是: ```bash /root/openfire-rest-api-plugin ``` 而你现在进入了 Openfire 服务器安装目录 `/opt/openfire`,这个目录是 Openfire 主程序,并不包含你要修改的 `pom.xml`。 --- ## ✅ 正确做法:回到插件源码目录再修改 `pom.xml` ### 第一步:进入正确的项目目录 ```bash cd /root/openfire-rest-api-plugin ``` 确认 `pom.xml` 存在: ```bash ls -l pom.xml ``` 你应该看到输出类似: ``` -rw-r--r-- 1 root root 12345 Oct 2 22:00 pom.xml ``` ✅ 表示文件存在,可以编辑。 --- ### 第二步:执行正确的 `sed` 替换命令(修复 Java 版本) 现在在这个目录下运行以下命令: ```bash # 修改 properties 中的配置 sed -i 's/<maven\.compiler\.source>17/<maven\.compiler\.source>1.8/g' pom.xml sed -i 's/<maven\.compiler\.target>17/<maven\.compiler\.target>1.8/g' pom.xml sed -i 's/<maven\.compiler\.release>17/<maven\.compiler\.release>8/g' pom.xml # 修改 maven-compiler-plugin configuration 内部的 source/target/release sed -i 's/<source>17<\/source>/<source>1.8<\/source>/g' pom.xml sed -i 's/<target>17<\/target>/<target>1.8<\/target>/g' pom.xml sed -i 's/<release>17<\/release>/<release>8<\/release>/g' pom.xml ``` --- ### 第三步:验证是否还有 `17` 残留 ```bash grep -E '(source|target|release).*17' pom.xml ``` 👉 如果没有任何输出,说明所有 `17` 都已被替换。 如果有残留,请手动用 `vim` 编辑: ```bash vim pom.xml ``` 搜索关键词: - `/source>` - `/target>` - `/release>` 逐个检查并修改为 `1.8` 或 `8`。 --- ### 第四步:清理并重新构建插件 ```bash mvn clean package -DskipTests ``` ✅ 成功后你会看到: ``` [INFO] BUILD SUCCESS ``` 并且生成 JAR 包: ```bash ls target/restapi-*.jar # 输出示例:target/restapi-1.12.1-SNAPSHOT.jar ``` --- ### 第五步:部署到 Openfire ```bash cp target/restapi-*.jar /opt/openfire/plugins/ chown openfire:openfire /opt/openfire/plugins/restapi.jar chmod 644 /opt/openfire/plugins/restapi.jar rm -rf /opt/openfire/plugins/restapi/ # 删除旧解压目录(避免冲突) ``` 重启 Openfire: ```bash systemctl restart openfire ``` 查看日志确认插件加载成功: ```bash tail -f /opt/openfire/logs/openfire.log ``` 等待出现: ``` INFO ... Starting REST API Plugin v1.12.1 INFO ... REST API enabled: true ``` --- ## 📌 总结:关键点回顾 | 问题 | 解决方案 | |------|----------| | `sed: can't read pom.xml` | 因为不在正确目录,应进入 `/root/openfire-rest-api-plugin` | | `invalid target release: 17` | `pom.xml` 中仍使用 Java 17,需改为 `1.8` 和 `8` | | 构建失败无 JAR | 清理后重新构建 `mvn clean package` | | 插件未生效 | 确保复制到 `/opt/openfire/plugins/` 并删除旧解压目录 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值