maven:
1.生成eclipse项目:mvn eclipse:eclipse
2.清除eclipse的一些系统设置:mvn eclipse:clean
3.mvn tomcat:run 在tomcat里面运行
生成清除Eclipse项目结构:
mvn eclipse:eclipse
mvn eclipse:clean
mvn clean 清理(删除target目录下编译内容)
mvn war:exploded 仅打包Web页面文件
mvn compile 编译项目
mvn clean complie
mvn package 打包发布 只是将你的代码打包到输出目录,一般的是 target下面。
mvn clean test 运行清理和测试
mvn clean package 运行清理和打包
mvn clean install 运行清理和安装 会将打好的包放到本地仓库
打包时跳过测试
mvn package -Dmaven.test.skip=ture
1、Maven Project可以理解为父工程。Maven Module可以理解为子工程。
groupId:组织标示 artifactId:项目名称 packaging:打包格式
mvn help:effective-pom 显示该pom所有的依赖关系
在使用mvn package进行编译、打包时,Maven会执行src/test/java中的JUnit测试用例,有时为了跳过测试,会使用参数-DskipTests和-Dmaven.test.skip=true,这两个参数的主要区别是:
-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
mvn dependency:tree 查看依赖树
1、Maven内置变量说明:
${basedir} 项目根目录
${project.build.directory} 构建目录,缺省为target
${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
${project.build.finalName} 产出物名称,缺省为${project.artifactId}-${project.version}
${project.packaging} 打包类型,缺省为jar
${project.xxx} 当前pom文件的任意节点的内容
在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署。目前<scope>可以使用5个值:
* compile,缺省值,适用于所有阶段,会随着项目一起发布。
* provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。
* runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。
* test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。
* system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。
mvnrepository.com 可以查找需要的依赖
传递性依赖,取最短路径