博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven实战第一步,eclipse创建hello-world项目
阅读量:6870 次
发布时间:2019-06-26

本文共 2466 字,大约阅读时间需要 8 分钟。

  • 先创建一个maven项目:

clipboard.png

  • 选择quikcstart:

clipboard.png

  • 填写相关配置

gruop id 和 artifact id 和version这三个元素定义了一个项目的基本坐标,在Maven的世界,任何的jar,pom或者war都是基于这些基本的坐标区分的。

Group Id:定义项目组

Artifact Id:定义了当前项目组中唯一的id
Version:顾名思义,指定当前的版本

clipboard.png

  • 生成的maven项目和pom.xml

clipboard.png

  • 接下来修改一下app.java的代码
![clipboard.png](/img/bV9ApR)package com.will.hello_world;/** * Hello world! * */public class App {    public static void main( String[] args )    {        System.out.println( new App().sayHello() );    }        public String sayHello(){        return "Hello Maven!";    }}

此时,target目录下还是空的。

clipboard.png

当我们右键项目,点击debug as -> maven clean,控制台会输出以下内容,这告诉我们,clean动作,maven会先清理输出目录target,即删除该目录。

clipboard.png

此时,右键Pom.xml选择run as->maven build

clipboard.png

goals输入compile,然后点击run,控制台此时会打出

clipboard.png

说明maven已经执行了编译任务,并且把编译后的class文件放在了工作空间指定工作目录后的target目录下。

  • 编写单元测试

编译完成后,我们要开始测试了,创建的maven项目已经集成了junit的依赖了,如果没有,可以自己手动添加后再执行maven update。

4.0.0
com.will
hello-world
0.0.1-SNAPSHOT
jar
hello-world
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test

上述pom代码中还有scope属性,如果scope属性为test,表示该依赖只对测试有效。如果不声明依赖,那么该依赖对主代码和测试都有效。

有了测试依赖,就可以开始编写测试类了,在src/test/java目录下编写测试类

clipboard.png

完成测试用例后,点击maven test,控制台输出以下内容,失败和警告都为0,说明我们的测试通过了。

  • 打包和运行

将项目进行编译和测试之后,下一个重要步骤就是打包了,pom中没有指定打包的类型,使用默认的打包类型jar。

点击maven build->goals中填写package,点击run,eclipse就会帮我们进行打包了。

clipboard.png

类似的,执行打包前,maven会自动的帮我们执行编译、测试等操作,可以看到,此时,我们已经将该项目打包成了hello-world-0.0.1-SNAPSHOT.jar的Jar包了,如果有需要的话,就可以复制这个Jar文件到其他项目的classpath文件中使用这个helloworld类了。

又或者你想在本地的其他maven项目中使用这个jar文件,此时你还需要执行一步操作,maven install,该指令会将输出的jar包安装到你本地的maven仓库中,其他maven项目就可以使用了。

  • 运行jar文件

此时,我们在jar包所在的文件夹执行java -jar jar包名

报了如下错误

clipboard.png

因为我们生成的jar包中是带有main方法的,带有main方法的类信息不会添加到mainfest中(可以使用解压工具查看Jar包)

此时我们可以用maven-shade-plugin插件,在pom.xml中添加如下代码

org.apache.maven.plugins
maven-shade-plugin
2.4.1
package
shade
com.will.hello_world.App

再重新执行maven clean和maven build 选择package命令,在target目录下新增了一个jar包带有shade后缀,

clipboard.png

此时执行java -jar x.jar

clipboard.png

执行成功!

转载地址:http://ampfl.baihongyu.com/

你可能感兴趣的文章
vCenter Server6.5 & SQL Server2014单机部署 - vShpere ESXI6.0-6.5集群管理
查看>>
JS中showModalDialog详细使用
查看>>
IAR spi调试
查看>>
我的友情链接
查看>>
linux下dhcp服务器搭建
查看>>
python list列表、tuple元祖
查看>>
我的友情链接
查看>>
Java关键字break和continue
查看>>
qtcreator的中文输入
查看>>
(1)DHCP的安装与授权 (2)地址、排除地址的建立 (3)选项的设置
查看>>
线程同步基础 -- synchronized篇
查看>>
quantum-f3的namespace的一些错误解决
查看>>
Centos 5.4 安装vncserver
查看>>
设计模式-Observer Pattern
查看>>
Esx4.0开机报错(vsd-mount失败)
查看>>
Lync 小技巧-52-Lync 2013-不加域-客户端-2-导入-证书-信任链
查看>>
nodejs简易聊天室
查看>>
RedHat AS4上安装yum与gcc详细教程
查看>>
lightning mdb 源代码分析(5)-事务控制
查看>>
war后缀的文件
查看>>