参照《maven实战》在本地创建对应的基本项目helloworld,在本地完成后项目结构如下:
可以看到maven项目的骨架:
src/main/java(javaz主代码)
src/test/java(测试代码)
src/main/resuources(非java资源文件)
pom.xml
maven相关执行命令
mvn clean compile --》mvn clean test --》mvn clean package --》mvn clean install
首先cmd切换到项目根目录下:
mvn clean compile
clean: maven 清理输出目录target
compile:maven项目编译主代码
这时会将项目主代码编译至目录target/classes目录 例如:将helloworld.java文件编译成helloworld.class文件
mvn clean test
执行单元测试,测试之前,会先自动执行项目主资源处理,主代码编译,测试资源处理,测试代码编译等工作,这是maven生命周期的一个特征。
出现报错“请使用-source5或更高版本以启用注释”原因:maven的核心插件之一compiler插件默认只支持编译java1.3,因此需要配置该插件使其支持java5。
在pom.xml中添加如下配置
mvn clean package
项目打包,默认打包类型jar。执行此命令将项目主代码打包成一个xxx-1.0-SNAP-SHOT.jar的快照文件,该文件位于target/输出目录中。但是该快照并没有Main-class信息。
于是在pom.xml中添加maven-shade-plugin插件,以便生成可执行的jar。
再次打包 target目录下生成带有Main-Class信息的可运行jar helloworld-1.0.0-SNAPSHOT 和原始的jar: original-helloworld-1.0.0-SNAPSHOT
cmd执行命令即可进入main口,打印出我们的helloworld了!
mvn clean install
将项目输出jar安装到了本地仓库,只有构件被下载到本地仓库后,才能被所有的maven项目使用。
这么一系列命令完成一个简单maven项目的编译、测试、打包过程!
注意:在过程中遇到包下载失败的可能,由于在访问maven的中央仓库,有些jar包是下载不下来的,网络原因很多国外的网站,我们访问不了,这个时候在maven的settings配置文件中配置的是公司maven私服的地址,私服中已经包含了几乎所有的lib包,私服具体什么概念,先放置日后会进行理解,先参考同事的配置进行了修改,这样就能执行成功了!!