mvn 常用命令

mvn archetype:create 创建 Maven 项目

mvn compile 编译主程序源代码,不会编译test目录的源代码。第一次运行时,会下载相关的依赖包,可能会比较费时

mvn test-compile 编译测试代码,compile之后会生成target文件夹,主程序编译在classes下面,测试程序放在test-classes下

mvn test 运行应用程序中的单元测试

mvn site 生成项目相关信息的网站

mvn clean 清除目标目录中的生成结果

mvn package 依据项目生成 jar 文件,打包之前会进行编译,测试

mvn install在本地 Repository 中安装 jar。

mvn eclipse:eclipse 生成 Eclipse 项目文件及包引用定义

mvn deploy 在整合或者发布环境下执行,将最终版本的包拷贝到远程 的repository,使得其他的开发者或者工程可以共享。

,它主要管理依赖的部署。目前可以使用5个值:

  • compile,缺省值,适用于所有阶段,会随着项目一起发布。
  • provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。
  • runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。
  • test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。
  • system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。

Unit Testing:
Error: cannot find symbol
Maven doesn’t see tested classes

java / kotlin 代码混合造成的,/src/test/里面只使用java代码即可