如何往jar中添加资源文件?
另外一个常见需求就是在不修改pom文件的前提下在打包的时候把资源文件打进去。针对这个需求maven又一次基于标准目录结构,也就是说基于这个公约你可以在打包的时候很容易的打进去。
在上述例子中我们增加了${basedir}/src/main/resources目录来放置一些希望打包打进去的资源文件。maven的规则是任何在${basedir}/src/main/resources 放置的文件在打包的时候都会原封不动的安装这个目录结构打包进去如下所示:
my-app |-- pom.xml `-- src |-- main | |-- java | | `-- com | | `-- mycompany | | `-- app | | `-- App.java | `-- resources | `-- META-INF | `-- application.properties `-- test `-- java `-- com `-- mycompany `-- app `-- AppTest.java
上面你可以看到在 META-INF 目录里有个application.properties文件,如果你解压这个jar你会看到如下目录结构:
|-- META-INF | |-- MANIFEST.MF | |-- application.properties | `-- maven | `-- com.mycompany.app | `-- my-app | |-- pom.properties | `-- pom.xml `-- com `-- mycompany `-- app `-- App.class
你可以看到 ${basedir}/src/main/resources 里面的内容在jar中可以被找到在META-INF目录下。同时你也发现了META-INF/MANIFEST.MF 、 pom.xml 和pom.properties,这些文件是在maven打包的时候自动生成的。当然你也可以生成自己的manifest 文件,如果你不指定的话那么maven会生成默认的(你也可以修改manifest,后面会说到这个事)。pom.xml 和 pom.properties被maven打入jar中包括一些自身的描述信息,一些元数据信息同时也可以给你自己的三方程序使用。一个简单的需求就是查看工程版本号。操作pom文件可能需要maven的工具包,不过操作属性文件直接可以基于标准java api来操作,他的内容如下:
#Generated by Maven #Tue Oct 04 15:43:21 GMT-05:00 2005 version=1.0-SNAPSHOT groupId=com.mycompany.app artifactId=my-app
单元测试的资源文件同样遵循上述标准,不过需要放在${basedir}/src/test/resources目录下。这样的话一个标准的目录结构如下所示:
my-app |-- pom.xml `-- src |-- main | |-- java | | `-- com | | `-- mycompany | | `-- app | | `-- App.java | `-- resources | `-- META-INF | |-- application.properties `-- test |-- java | `-- com | `-- mycompany | `-- app | `-- AppTest.java `-- resources `-- test.properties
单元测试中你可以引用下述片段去访问测试用的资源文件:
... // Retrieve resource InputStream is = getClass().getResourceAsStream( "/test.properties" ); // Do something with the resource ...
相关推荐
Docx4j的入门指南主要针对新用户,提供了文档的最新版本,可以在GitHub的docs目录中找到。当前大部分的入门文档是英文版本,但用户也可以通过机器翻译或自行翻译为其他语言。有兴趣提供翻译版本的用户,可以通过联系...
【Jetspeed2官网guide文档翻译2】这篇文档主要面向初次接触Jetspeed的用户,提供了从源码构建和部署Jetspeed 2.2的详细步骤。Jetspeed是一个开源的portlet容器和企业信息门户平台,它允许集成多种应用和服务,提供...
快速入门适合对 HBase 有一定了解的用户,而慢速开始则提供了更详尽的配置和运行环境设置指南。 **配置** 配置 HBase 包括几个关键文件:`hbase-site.xml` 用于自定义配置,`hbase-default.xml` 提供默认配置参数...
- 文档:包括用户手册、快速入门指南和常见问题解答,帮助用户理解和操作软件。 - 配置文件:预设的配置模板,简化初始设置。 - 示例数据库:展示如何设置和管理用户、设备和服务。 - 语言包:包含中文翻译的界面...
文档鼓励用户发现文档中的任何不足之处,并鼓励用户自己学习并撰写文档,源文件以xdoc格式提供,存放在项目的Git Fork仓库中。 对于MyBatis的安装,用户只需要将mybatis-x.x.x.jar文件包含在类路径中。如果使用...
对于初学者,可以尝试Spring官方提供的入门指南。此外,可以在stackoverflow网站上提问,或者在Spring Boot的GitHub仓库中报告bug。 3. 第一步 文档还提供了一个“第一步”的部分,旨在帮助用户开始使用Spring Boot...
特别是Maven用户,只需要将相应的dependency代码片段加入到pom.xml文件中,即可快速完成MyBatis的依赖引入。 关于XML配置,文档详细说明了如何从XML文件构建SqlSessionFactory实例。SqlSessionFactory是MyBatis中一...
Spring Boot Reference Guide中文文档是对Spring Boot官方文档的翻译,它为中文用户提供了学习和使用Spring Boot的指南。 文档中主要涵盖了以下知识点: 1. 文档结构:文档包含多个章节,从基础的入门指导到高级...
文档提到了JUnit 5的用户指南,介绍了JUnit 5官方user guide文档的翻译,以及英文官方文档的来源。文档的当前版本是JUnit 5.0.24。为了满足不同用户的阅读习惯和网络环境,文档被托管在不同的服务器上,包括国内腾讯...
- **简介**:这部分内容为开发者提供了快速入门指南,帮助新用户理解如何开始使用Spring框架进行开发。 - **目标读者**:面向希望了解如何快速搭建Spring应用环境的初学者。 ##### 2. Spring框架介绍 - **依赖注入...
### Mybatis-Spring指南中文版知识点详述 #### 第一章 介绍 ##### 1.1 为什么整合MyBatis和Spring? MyBatis作为一款优秀的SQL映射框架,在与Spring框架结合使用时能带来诸多便利。每个Spring的用户都曾期待...
#### 三、入门指南 - **安装**: - **JAR包安装**:将`mybatis-x.x.x.jar`文件放置到项目的classpath下。 - **Maven安装**:在`pom.xml`文件中添加如下依赖: ```xml <groupId>org.mybatis <artifactId>...