maven的常用操作:
1.maven的属性设置:
<!-- maven构建项目时使用的编码,避免中文乱码 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 编译代码使用的jdk版本 --> <maven.compiler.source>1.8</maven.compiler.source> <!-- 运行程序时使用的jdk版本 --> <maven.compiler.target>1.8</maven.compiler.target> </properties>
2.maven的全局变量:
自定义的属性:
a.在<properties>通过自定义标签声明变量(标签名教师变量名)
b.在pom.xml文件中的其他位置,使用${标签名}使用变量的值
自定义的全局变量一般是定义依赖的版本号,当你的项目中要是用多个相同的版本号,先使用全局变量定义,再使用${变量名}
<properties> <spring.version>5.2.5</spring.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> </dependencies>
3.资源插件
<build> <resources> <resource> <directory>src/main/java</directory><!--所在的目录--> <includes><!--包括目录下的.properties,.xml 文件都会扫描到--> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <!-- filtering 选项 false 不启用过滤器, *.property 已经起到过滤的作用了 --> <filtering>false</filtering> </resource> </resources> </build>
作用:mybatis会用到这个作用
a.默认没有使用resources的时候,maven执行编译代码时,会把src/main/resources目录中的文件拷贝到target/classes目录中,对于src/main/java目录下的非java文件不处理,不拷贝到target/classes目录中
b.我们的程序有需要把一些文件放在src/main/java目录中,当我在执行java程序中,需要用到src/main/java目录中的文件,需要告诉maven在mvn compile src/main/java目录下的程序时,需要把文件一同拷贝到target/classes目录中,此时就需要在<build>中加入<resources>