想了半天也不知道标题应该怎么起,

1、maven工程中的xml文件应该放在哪才能打包的时候打进去?

2、用sax解析文件时,如何确定文件的路径?

3、如何才能确保本地方法可以读取到本工程中的路径,但是打成jar包供别人调用方法的时候却找不到配置文件路径?

直接上代码和截图

maven工程下的配置文件统一放到src/main/resources下,这样默认会从这个路径下读取配置文件,然后在pom.xml文件中加入如下配置,确保在打包的时候可以把这个路径下的配置文件也打过去。

用Document org.dom4j.io.SAXReader.read(InputStream in) throws DocumentException这个方法来解析,这样的话里面就传InputStream就可以了。

InputStream domainIn = ShopSDK.class.getClassLoader() .getResourceAsStream("domain.xml");

上面已经说过了,将domain.xml配置文件放到正确的路劲下默认从那个路径下读取,因此不需要来指定路径了。

用这种方式来获取inputStream,这样即使打成jar包,别人引用的时候也可以读取到方法中提供的配置文件信息。

这样即使我把maven工程打成jar包,别人来调用我getValue这个方法时,就不会存在找不到配置文件,路径不对等问题了。

maven工程xml文件路径问题相关推荐

  1. idea中java项目显示不对_Intellj Idea中的maven工程Java文件颜色不对,未被识别的解决...

    Intellj Idea中的maven工程Java文件颜色不对,未被识别的解决,模块,工程,给大家,文件,灰色 Intellj Idea中的maven工程Java文件颜色不对,未被识别的解决 易采站长 ...

  2. JavaFX maven工程pom文件完整内容

    JavaFX maven工程pom文件完整内容:打包fxml.css等静态资源文件 <project xmlns="http://maven.apache.org/POM/4.0.0& ...

  3. 史上最全的maven pom.xml文件教程详解

    <project xmlns=http://maven.apache.org/POM/4.0.0 xmlns:xsi=http://www.w3.org/2001/XMLSchema-insta ...

  4. java读取src xml文件路径_Java获取路径方法相对路径读取xml文件方法

    (1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getRequestURI ...

  5. mysql遍历 xml文件路径_解决Mapper接口和mapper.xml的文件位置问题

    今天遇到一个问题是mybatis中接口和对应的mapper文件位置不同,而引起的操作也会不同,在网上找了好久最终找到了方法,这里就简单的解析一下: 我们知道在典型的maven工程中,目录结构有:src ...

  6. Maven settings.xml 文件详解

    概述 settings.xml 文件中的 settings 元素包含用于以各种方式配置 Maven 的元素(就像 pom.xml 文件一样),但不应捆绑到任何特定项目,或分发给受众.其中包括本地存储库 ...

  7. Intellj Idea中的个别maven工程Java文件颜色不对变灰色,未被识别

    其实是编辑器未识别成maven工程. 解决: 如下两种方式效果一样 方式一: 1.点击侧边栏Maven 2.选择导入工程的pox.xml文件 3.恢复正常 方式二: 在idea中开发maven项目时, ...

  8. 建立war的maven工程pom文件报错

    问题描述: 建立maven的web工程时pom文件报错 原因分析: 在使用maven创建web工程时,默认创建的是2.5版本的,但是由于maven的项目结构,是不会自动创建web.xml等webapp ...

  9. Mybatis Plus基础06 mapperLocations配置(指定Mapper.xml文件路径)

    学习目标: 配置mapperLocations 学习产出: 1.为什么配置这个? 截止目前为止,所有的数据操作都是依靠着BaseMapper中封装的方法来完成增删改查操作. 有些查询比如多表查询,是无 ...

最新文章

  1. js 正则匹配URL,网址,带端口,带query的
  2. java 使用new新建一个对象时的操作过程
  3. 【推荐】iOS汉字转拼音第三方库
  4. 当我们在讨论奢侈品行业时,人工智能可以做什么?
  5. mxnet:mx.sym.BlockGrad理解
  6. thinkphp 创建子应用
  7. golang基本数据类型默认值
  8. 直播实录 | 哈工大博士生周青宇:从编码器与解码器端改进生成式句子摘要
  9. [css] 请使用css3来模拟中/英文打字的效果
  10. 权势二进制(51Nod-1413)
  11. 遭遇掌控欲望极强的上司,郁闷的项目
  12. Maven运行Selenium报错org/w3c/dom/ElementTraversal
  13. MogileFS与FastDFS的见解
  14. Android基于XMPP Smack Openfire开发IM(1)搭建openfire服务器
  15. mysql 备份表_删库一定要跑路吗?手把手教你MySQL数据恢复
  16. 再见,罗永浩!再见,锤子!
  17. dell服务器怎么看故障信息,DELL服务器故障码详解
  18. NVIDIA显卡驱动报错
  19. read/write函数
  20. Word怎么添加页码

热门文章

  1. Valgrind简单用法
  2. A*寻路算法与它的速度
  3. Windows I/O模型、同步/异步、阻塞/非阻塞
  4. COM编程之二 接口
  5. Linux网络编程 | 多路复用I/O :select、poll、epoll、水平触发与边缘触发、惊群问题
  6. Linux 多线程(二)线程安全:线程安全、互斥与互斥锁、死锁、同步与条件变量
  7. 【轻端重云和边缘架构新模式】
  8. 感谢有你 WebRTCon 2018优秀出品人、讲师与志愿者
  9. 交付效率提升40%,珍爱网基于微服务的DevOps落地指南
  10. FFmpeg源代码:avcodec_receive_frame