<!--代码编译,指定扩展包在lib下,且打包时将/lib下的包打包进来--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <encoding>UTF-8</encoding> <source>1.8</source> <target>1.8</target> <showWarnings>true</showWarnings> <compilerArguments> <extdirs>${project.basedir}/lib</extdirs> </compilerArguments> </configuration> </plugin>
idea创建普通java项目:
maven--quickstart
groupId:公司域名倒序
artifactId:项目名
version:版本
resource:手动添加,添加后需要右键make directory as --resource root
依赖范围:
scope值有:compile,test,provide,默认是compile
maven构建项目,编译,测试,打包,安装,部署过程
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency>
定义全局变量
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <!--定义全局变量,表示版本号--> <spring-version>5.2.0</spring-version> </properties>
使用全局变量
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring-version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-contenxt</artifactId> <version>${spring-version}</version> </dependency>
<!-- 作用:默认没有使用resource的时候,maven执行编译代码,会把src/main/resources目录中的文件拷贝到target/classes目录中 对于src/main/java目录下的非java文件不拷贝到target/classes中,--> <!-- 程序需要把一些文件放在src/main/java目录中,当程序执行时需要这些文件,例如.properties结尾文件,需要告诉maven在编译时,把文件一同--> <!-- 拷贝到target/classes文件中,此时就需要在<build>中加入resources--> <build> <resources> <resource> <!-- 所在目录--> <directory>src/main/java</directory> <includes> <!-- 目录下的properties、xml文件都会被扫描到--> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <!-- 选项false,不起用过滤器--> <filtering>false</filtering> </resource> </resources> </build>