使用Maven命令构建项目笔记

一、maven相关命令

mvn archetype:generate 固定写法
-DgroupId 包名
-DartifactId 项目名称
-DarchetypeArtifactId maven-archetype-quickstart
—>创建Java Project
maven-archetype-webapp
—>创建Web Project
-DinteractiveMode 是否使用交互模式
mvn clean compile 编译
mvn clean test 测试
mvn clean package 打包(执行打包命令前,会先执行编译和测试命令)
mvn clean install 安装(执行安装命令前,会先执行编译、测试、打包命令)
mvn tomcat:run 或 mvn jettry:run 运行
mvn spring-boot:run springboot项目的启动

1.构建Java Project

1.1使用命令:

mvn archetype:generate -DgroupId=com.hkb.app -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

使用Maven命令构建项目笔记_第1张图片

1.2生成的项目结构:

使用Maven命令构建项目笔记_第2张图片

2.构建Java Web

2.1删掉刚刚新建的myapp,使用命令:

mvn archetype:generate -DgroupId=com.hkb.app -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

使用Maven命令构建项目笔记_第3张图片

2.2生成的项目结构:

使用Maven命令构建项目笔记_第4张图片

3.构建多模块项目

3.1使用命令:

mvn archetype:generate -DgroupId=com.hkb.app -DartifactId=myapp-parent -DarchetypeArtifactId=maven-archetype-site-simple -DinteractiveMode=false

使用Maven命令构建项目笔记_第5张图片

3.2生成的项目结构:

使用Maven命令构建项目笔记_第6张图片

3.3除了pom.xml,删掉其他的,在此目录下构建多模块构建Java Project或Java Web即可。

二、使用mvn tomcat:run启动项目遇到的问题

使用Maven命令构建项目笔记_第7张图片

1.在pom.xml把有javax.servlet相关的添加如下的依赖



    javax.servlet
    servlet-api
    2.5
    provided

再次启动:

使用Maven命令构建项目笔记_第8张图片

2.或者在pom.xml中配置jetty

<build>
	<plugins>
		<!--配置jetty -->
		<plugin>
			<groupId>org.mortbay.jetty</groupId>
			<artifactId>maven-jetty-plugin</artifactId>
		</plugin>
	</plugins>
</build>

使用mvn jetty:run启动

使用Maven命令构建项目笔记_第9张图片

三、设置JDK版本

方式1:全局设置,在settings.xml的profiles中加入以下配置

<profile>
	<id>jdk-1.8</id>
	<activation>
		<activeByDefault>true</activeByDefault>
		<jdk>1.8</jdk>
	</activation>
	<properties>
		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>
		<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>
</profile>

方式2:局部配置,在pom.xml中加入以下配置

<properties>
	<!-- 设置编码 -->
	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
	<!-- jdk版本号 -->
	<java.version>1.8</java.version>
</properties>

<build>
	<!-- 设置jdk版本 -->
	<plugins>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
				<source>${java.version}</source>
				<target>${java.version}</target>
			</configuration>
		</plugin>
	</plugins>
</build>

四、多模块依赖打包

mvn clean package -pl [这里填父模块名称,例如上面的:myapp-parent] -am -Dmaven.test.skip=true -f pom.xml

你可能感兴趣的:(maven)