Maven实战学习笔记(一)


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<!-- POM的模型版本,对于Maven2和Maven3来说它只能是4.0.0 -->
<modelVersion>4.0.0</modelVersion>
<!-- 定义当前Maven项目隶属的实际项目(类似于包的作用,一般命名为:组织或公司+项目名称) -->
<groupId>com.juvenxu.mvnbook</groupId>
<!-- 定义实际项目中的一个Maven项目(模块)-->
<artifactId>hello-world</artifactId>
<!-- 定义Maven项目当前所处的版本 -->
<version>0.0.1-SNAPSHOT</version>
<!-- 定义Maven项目的打包方式(jar、war) -->
<packaging>jar</packaging>
<!-- 声明一个对于用户更为友好的项目名称,非必须项 -->
<name>hello-world Maven Webapp</name>
<url>http://maven.apache.org</url>
<!-- 下面为本项目所依赖的jar -->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<!-- scope为依赖范围,若依赖范围为test则表示改依赖只对测试有效。
如果不声明依赖范围,那么默认就是compile,
表示改依赖对主代码和测试代码都有效 -->
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>hello-world</finalName>
<plugins>
<plugin>
<!-- 编译的java版本 -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<!-- 配置单元测试相关信息 -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.10</version>
<configuration>
<!-- 忽略单元测试 -->
<skipTests>true</skipTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<!-- 将打的包中添加main方法所在的类,进行java -jar XXX.jar运行 -->
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.juvenxu.mvnbook.helloworld.HelloWorld</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
<!--
mvn clean compile //清除并编译
mvn clean test //清除并执行单元测试
mvn clean package //清除并进行打包
mvn clean install //清除并进行安装
执行测试前,它会自动执行:主资源处理、主代码编译、测试资源处理、测试代码编译等

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project hello-world: There are test failures.
解决方法:打包跳过测试有两种方法
1、是命令行,mvn clean package -Dmaven.test.skip=true
2、是写入pom文件,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
Maven compiler插件默认只支持编译java1.3

生成项目骨架
//maven3使用该命令(自动下载最新版本最稳定archetype版本)
mvn archetype:generate
//maven2使用该命令(指定版本进行下载)
mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-5:generate

classifier:定义构建输出的一些附属构件。不能直接定义项目的classifier,
因为附属构件不是项目直接默认生成的,而是由附件的插件帮助生成。
groupid、artifactId、version是必须定义的,packaging是可选的(默认是jar),而classifier是不能直接定义的。
构件的文件名规则:artifactId-version[-classifier].packaging
--!>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值