`
123003473
  • 浏览: 1061073 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

maven资源文件引用

 
阅读更多
资源文件引用:
1、maven默认系统的资源文件在src/main/resources下,在执行mvn process-resources的时候会将此文件夹下的东西全部拷贝到classes文件夹下,同时对文件中含有${}中的值进行引用赋值
  
   以下操作基于如下命令行的操作:mvn archetype:create -DgroupId=com.test -DartifactId=my-app -Dversion=1.0 -DpackageName=com.test-->cd my-app
  
2、在resources文件夹下的资源文件如何引用pom.xml以及settings.xml里面的东西
  创建资源文件:src/main/resources/application.properties文件,在下面添加如下引用
  ${pom.name}  将引用pom.xml中的<name>my-app</name>
  ${pom.version}  将引用pom.xml中的version>1.0-SNAPSHOT</version>
  ${settings.localRepository}  将引用settings.xml中的<localRepository>F:\repository</localRepository>
  同时在pom.xml中添加如下代码:

<build>   
<resources>   
  <resource>   
    <directory>src/main/resources</directory>   
    <filtering>true</filtering>   
  </resource>   
</resources>   
</build> 


执行 mvn process-resources,然后查看target/classes/application.properties的内容
3、在resources文件夹下的资源文件如何引用外部属性文件中的配置:
创建src/main/filters/filter.properties,内容如下:
  tools=maven
在src/main/resources/application.properties资源文件中引用:
  message=${tools}
同时在pom.xml中添加如下配置:

<build>   
<filters>   
  <filter>src/main/filters/filter.properties</filter>   
</filters>   
<resources>   
  <resource>   
    <directory>src/main/resources</directory>   
    <filtering>true</filtering>   
  </resource>   
</resources>   
</build>  


执行 mvn process-resources,然后查看target/classes/application.properties的内容

4、如果不想增加外部资源文件,可以将所需要的属性添加到pom.xml文件中,然后在resources文件夹下的资源文件引用
  pom.xml中添加如下:

<build>   
<resources>   
  <resource>   
    <directory>src/main/resources</directory>   
    <filtering>true</filtering>   
  </resource>   
</resources>   
 </build>   
 <properties>   
<my.filter>filter</my.filter>   
</properties>


在src/main/resources/application.properties资源文件中引用:
  ${my.filter}
执行 mvn process-resources,然后查看target/classes/application.properties的内容
5、在resources文件夹下的资源文件如何通过命令行进行赋值:
  在src/main/resources/application.properties资源文件中引用:
  command.line.prop=${command.line.prop}
执行mvn process-resources "-Dcommand.line.prop=hello again",然后查看target/classes/application.properties的内容




<!-- profiles: 目前主要是对web项目中的静态资源进行过滤-->
	<profiles>
		<profile>
			<id>dev</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<build>
				<filters>
					<filter>../${project.parent.artifactId}/vars/vars.dev.properties</filter>
				</filters>
			</build>
		</profile>
		<profile>
			<id>pre</id>
			<build>
				<filters>
					<filter>../${project.parent.artifactId}/vars/vars.pre.properties</filter>
				</filters>
			</build>
		</profile>
		<profile>
			<id>prod</id>
			<build>
				<filters>
					<filter>../${project.parent.artifactId}/vars/vars.prod.properties</filter>
				</filters>
			</build>
		</profile>
	</profiles>





build>
		<pluginManagement>
			<plugins>
				<!-- war plugin config: 对静态资源进行过滤,替换变量。 -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-war-plugin</artifactId>
					<configuration>
						<warName>${project.artifactId}</warName>
						<webResources>
							<resource>
								<directory>src/main/webapp</directory>
								<filtering>true</filtering>
								<includes>
									<include>**/*.html</include>
									<include>**/*.js</include>
									<include>**/*.css</include>
								</includes>
							</resource>
						</webResources>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
		<resources>
			<resource>
				<directory>${basedir}/src/main/resources</directory>
				<filtering>true</filtering>
			</resource>
		</resources>
		<testResources>
			<testResource>
				<directory>${basedir}/src/test/resources</directory>
			</testResource>
		</testResources>
	</build>
分享到:
评论

相关推荐

    SpringBoot项目使用maven配置文件

    - `mvn install` 将打包后的文件安装到本地仓库,供其他项目引用。 - `mvn dependency:tree` 查看项目的所有依赖树,帮助理解依赖关系。 通过以上知识点,我们可以有效地管理和构建SpringBoot项目,确保开发过程...

    fixflow maven仓库文件

    这个压缩包包含了FixFlow 5.2所有相关的JAR文件和其他资源,可以直接导入到本地Maven仓库,无需通过网络连接到远程仓库。文件名为“repo”的压缩包,解压后应该包含了一系列按照Maven的目录结构组织的子目录,如`...

    news jar包maven资源

    jar(Java Archive)是Java平台的标准归档格式,用于封装多个类文件和资源文件。在Maven项目中,jar包通常作为库来使用,包含了预编译的代码和资源,可供其他项目引用。新闻相关的jar包可能包含了处理新闻数据的类库...

    maven 3.6.1文件下次及配置修改

    3. **`src/main/resources`** - 用于存放非编译代码的资源文件,如配置文件、图片等。 4. **`src/test/java`** - 测试源代码的目录,用于编写JUnit或其他测试框架的测试用例。 5. **`src/test/resources`** - 测试...

    尚硅谷Maven课程笔记代码资源

    Maven依赖管理的关键在于它的中央仓库,存储了大量的开源库,开发者无需手动下载即可直接引用。此外,还可以设置本地仓库和私有远程仓库,以满足特定项目的需求。Maven通过解析POM文件中的依赖声明,自动从仓库中...

    maven多环境部署pom文件实例

    2. **文件夹方式**:创建不同环境的配置文件夹,如`src/main/resources-dev`、`src/main/resources-test`和`src/main/resources-prod`,并使用Maven资源过滤(Resource Filtering)来选择合适的资源文件。...

    超全面搭建Maven仓库

    #### 一、下载安装Maven及Maven资源库 1. **下载Maven** - 访问Maven官方网站: [http://maven.apache.org/download.cgi](http://maven.apache.org/download.cgi)。 - 下载`apache-maven-3.5.4-bin.zip`, 这是...

    Maven很Maven仓库

    Maven仓库则是Maven系统中的一个重要组成部分,它存储了各种依赖库,如JAR文件,使得开发者可以轻松地引用和下载所需库,而无需手动下载和管理。 描述中提到的"spring4.0.5"和"mybatis"是两个流行的Java框架。...

    maven之开源中国Maven库

    开源中国Maven库是中国的一个开源软件资源平台,提供了大量的开源Java库,使得开发者可以便捷地下载和引用这些库到自己的项目中,无需依赖国外的Maven中央仓库,从而提高了在国内开发项目的效率。 【描述】虽然描述...

    hibernate Maven仓库资源

    **描述解析:**描述中提到“hibernate,Maven引用的仓库资源”,这意味着我们需要了解如何在Maven项目中配置和引用Hibernate的依赖。这通常涉及到在`pom.xml`文件中添加Hibernate的坐标(groupId, artifactId, ...

    maven打包 maven打jar包详细步骤

    在`resources`阶段,处理资源文件(如配置文件);`test*`阶段则用于测试代码。最后,`package`阶段会根据项目的打包类型(如JAR或WAR)生成相应的文件,存放在`target`目录下。 3. `mvn install`:此命令在`...

    maven3.6的安装包

    Maven的配置文件 `settings.xml` 默认位于 `${MAVEN_HOME}/conf` 目录下。这个文件用于定义Maven的全局配置,包括本地仓库位置、远程仓库地址等。在这个描述中提到的 "已经配置好resp资源包的地址" 指的可能就是指在...

    maven-war-plugin:Java WEB JS,CSS,HTML压缩,代码注入,静态资源文件引用文件MD5处理等等

    ####项目描述该Maven插件在apache的maven-war-plugin插件基础之上扩展配置文件package.conf复制到maven资源文件路径即可 package.conf 配置如下: #CDN HOST cdn.base.url=http://xxx.cdn.com/ #Jsp中Script.src,...

    Maven 权威指南 非扫描版

    四、maven项目下 jar 引用的问题 1、从maven 自己的数据仓库上更新下载 jar 文件 2、手动将下载下来的 JAR 包添加到 Maven 的本地仓库,命令如下 mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面...

    关于maven的资源依赖介绍

    Jar 工程用于创建 Java 类库,打包结果是一个 `.jar` 文件,可供其他项目引用。 #### 1.2 War 工程 War 工程主要用于Web应用,打包结果是一个 `.war` 文件,包含了Web应用的所有资源,可以直接部署到Servlet容器中...

    maven3.6.2版本

    **正文** Maven 3.6.2 是一个流行的构建工具,主要用于管理Java项目的构建、...而提供的压缩包"apache-maven-3.6.3"包含了完整的Maven 3.6.2安装文件,你可以下载并按照官方文档进行安装,开始享受Maven带来的便利。

    java-maven本地仓库包大全

    Java Maven 本地仓库包大全是Java开发者不可或缺的资源集合,它包含了各种开源库、框架、工具的JAR文件,使得开发人员在构建项目时能够快速便捷地引用这些依赖。Maven是一个强大的项目管理和构建工具,它通过管理...

    maven的本地资源包

    1. **资源过滤**:Maven提供资源过滤功能,允许我们在构建过程中替换或过滤资源文件中的变量。例如,`src/main/resources`下的配置文件可以被自动处理,替换掉`${property}`形式的占位符。 2. **资源复制**:通过`...

    maven jar下载顺序测试的资源

    如果两个或多个依赖引用了同一个JAR的不同版本,Maven会使用“第一声明者优先”原则,除非有更近的依赖声明了不同的版本。Maven的`dependencyManagement`部分可以用来全局控制依赖版本,避免冲突。 3. **缓存管理*...

    jeesite 框架maven数据仓库包

    对于初次接触Jeesite或者对Maven不太熟悉的开发者,建议详细研究这个包内的文件结构,理解Maven的工作原理,以便更好地管理和使用这些资源。同时,学习如何维护和更新这个本地仓库,随着Jeesite框架的新版本发布,...

Global site tag (gtag.js) - Google Analytics