失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 编译后没有taget文件夹_maven资源文件的相关配置才会在编译后的target里面有

编译后没有taget文件夹_maven资源文件的相关配置才会在编译后的target里面有

时间:2020-09-27 20:12:32

相关推荐

编译后没有taget文件夹_maven资源文件的相关配置才会在编译后的target里面有

建Maven项目的时候,如果没有进行特殊的配置,Maven会按照标准的目录结构查找和处理各种类型文件。

src/main/java和src/test/java

这两个目录中的所有*.java文件会分别在comile和test-comiple阶段被编译,编译结果分别放到了target/classes和targe/test-classes目录中,但是这两个目录中的其他文件都会被忽略掉。

src/main/resouces和src/test/resources

这两个目录中的文件也会分别被复制到target/classes和target/test-classes目录中。

target/classes

打包插件默认会把这个目录中的所有内容打入到jar包或者war包中。

pom中

src/main/java**/*.properties**/*.xmlfalsesrc/main/resources**/*.properties**/*.xml**/*.ftl**/*.html**/*.pdffalse

Maven项目的标准目录结构

src

main

java 源文件

resources 资源文件

filters 资源过滤文件

config 配置文件

scripts 脚本文件

webapp web应用文件

test

java 测试源文件

resources 测试资源文件

filters 测试资源过滤文件

it 集成测试

assembly assembly descriptors

site Site

target

generated-sources

classes

generated-test-sources

test-classes

xxx.jar

pom.xml

LICENSE.txt

NOTICE.txt

README.txt

资源文件的配置

资源文件是Java代码中要使用的文件。代码在执行的时候会到指定位置去查找这些文件。前面已经说了Maven默认的处理方式,但是有时候我们需要进行自定义的配置。

有时候有些配置文件通常与.java文件一起放在src/main/java目录(如mybatis或hibernate的表映射文件)。有的时候还希望把其他目录中的资源也复制到classes目录中。这些情况下就需要在Pom.xml文件中修改配置了。

可以有两种方法:

一是在元素下添加进行配置。

另一种是在的子元素中配置maven-resources-plugin等处理资源文件的插件。

配置resouces节点

.......

src/main/resources

**/*.properties

**/*.xml

false

src/main/java

**/*.properties

**/*.xml

false

......

配置资源处理插件

maven-resources-plugin

2.5

copy-xmls

process-sources

copy-resources

${basedir}/target/classes

${basedir}/src/main/java

**/*.xml

另一个插件也能完成相同的功能

org.codehaus.mojo

build-helper-maven-plugin

1.8

add-resource

generate-resources

add-resource

src/main/java

**/*.xml

打包时文件相关的配置

打包时target/classes目录中的资源文件会和class字节码一起被打进jar包或war包中。有时候默认的情况不能完全满足需求,如target/classes目录中的一些文件不希望打入jar包中,就需要额外配置maven-jar-plugin插件。

org.apache.maven.plugins

maven-jar-plugin

2.4

*.properties

true

xxxxxx.ConsoleLauncher

如果觉得《编译后没有taget文件夹_maven资源文件的相关配置才会在编译后的target里面有》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。