博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven配置src/resources默认目录
阅读量:6479 次
发布时间:2019-06-23

本文共 2355 字,大约阅读时间需要 7 分钟。

在maven工程中,我们会将配置文件放到,src/main/resources   下面,例如

我们需要确认resource 下的文件 编译之后存放的位置

 

它编译的路径直接位于classes下面,这个路径其实就是classPath的路径,所以,在resources 根目录下的配置文件其实就是 classPath的路径

 

[java]   
 
  1. public static void main(String[] args) throws ParserConfigurationException, Exception{  
  2.         ClassLoader classLoader = TestDom.class.getClassLoader();  
  3.         URL resource = classLoader.getResource("test.xml");  
  4.         String path = resource.getPath();  
  5.         System.out.println(path);  
  6.         InputStream resourceAsStream = classLoader.getResourceAsStream("test.xml");  

这样我们就可以直接拿到路径,调用 getResourceAsStream 方法 可以直接拿到目标文件的输入流

 

Maven 为我们提供了一致的项目目录配置(源文件夹、资源文件夹等),在自动构建项目时, Maven 会按照这个配置来执行操作(编译源文件、拷贝资源文件)。

当 Maven 规约的默认配置不能够满足我们的需求时,我们就要动手修改项目的 Maven 配置,让我们的项目能够与 Maven 很好地协同工作。这里讨论的需求有:

  1. 配置多个源文件夹来管理我们项目的模块
  2. 配置多个资源文件夹来管理我们项目模块的资源文件
  3. 有些遗留代码的一些资源文件是放在源文件夹下的,为了不改变原有项目结构,我希望 Maven 能够从源文件夹下读取资源文件
  4. 我想将项目模块的源文件和资源文件放置在同一个文件夹下,以方便开发与维护
 
      查看maven默认目录结构配置,在项目根路径下查看pom.xml,双击打开点击Effective POM选项,在页面中可以查找到maven默认的目录结构
[html]   
 
 
  1. <sourceDirectory>D:\workspace\meweb\src\main\java</sourceDirectory>  源代码文件夹  
  2. <scriptSourceDirectory>D:\workspace\meweb\src\main\scripts</scriptSourceDirectory>  脚本  
  3. <testSourceDirectory>D:\workspace\meweb\src\test\java</testSourceDirectory> 测试代码  
  4. <outputDirectory>D:\workspace\meweb\target\classes</outputDirectory> 编译后输出的目录  
  5. <testOutputDirectory>D:\workspace\meweb\target\test-classes</testOutputDirectory> 测试代码编译输出目录  
  6. <resources> 资源文件夹,可配置多个  
  7.   <resource>  
  8.     <directory>D:\workspace\meweb\src\main\resources</directory> 资源文件目录  
  9.     <includes> 包含的文件  
  10.       <include>*.*</include>  
  11.     </includes>  
  12.   </resource>  
  13. </resources>  
  14. <testResources>  
  15.   <testResource>  
  16.     <directory>D:\workspace\meweb\src\test\resources</directory> 测试资源目录  
  17.   </testResource>  
  18. </testResources>  
  19. <directory>D:\workspace\meweb\target</directory>  
   找到maven目录结构配置,就知道怎么修改配置了,可以在pom.xml 中project -- build标签中配置maven目录结构,使其符合自身项目需要
   修改,源代码路径为src/main,资源路径为src/resources
 
[html]   
 
 
  1. <sourceDirectory>src/main</sourceDirectory>  
  2.         <resources>  
  3.             <resource>  
  4.                 <filtering>true</filtering>  
  5.                 <directory>src/resources</directory>  
  6.                 <includes>  
  7.                     <include>*.*</include>  
  8.                 </includes>  
  9.             </resource>  
  10.         </resources>  
也可以配置多个资源目录
[html]   
 
 
  1. <sourceDirectory>src/main</sourceDirectory>  
  2.         <resources>  
  3.             <resource>  
  4.                 <filtering>true</filtering>  
  5.                 <directory>src/resources</directory>  
  6.                 <includes>  
  7.                     <include>*.*</include>  
  8.                 </includes>  
  9.             </resource>  
  10.             <resource>  
  11.                 <directory>test</directory>  
  12.                 <includes>  
  13.                     <include>*.*</include>  
  14.                 </includes>  
  15.             </resource>  
  16.         </resources>  
你可能感兴趣的文章
利用simulink分析系统各种传递函数的BODE图、阶跃响应、单位脉冲响应
查看>>
在iOS当中发送电子邮件和短信
查看>>
python的单例模式
查看>>
13~1003的和
查看>>
myeclipse启动jboss报ERROR [MainDeployer] Could not create deployment
查看>>
pycharm如何新项目如何不默认创建虚拟环境(吐槽)
查看>>
Loadrunner检查点小结(很经典)
查看>>
MySQL字段类型详解
查看>>
ORACLE 的游标
查看>>
虚拟机安装的UBUNTU全屏的方法:
查看>>
java虚拟机类加载器
查看>>
ASP.NET状态管理之八(会话Session)
查看>>
I.MX6 Android 5.1.1 下载、编译
查看>>
background
查看>>
转载:大型网站架构演变和知识体系
查看>>
testNG 学习笔记 Day 1 使用功能详解
查看>>
JAVA 将图片转换为Base64编码
查看>>
ubantu 编译mysql++
查看>>
团队-象棋游戏-开发文档
查看>>
各项目意见(第一阶段)
查看>>