zoukankan      html  css  js  c++  java
  • 使用Maven、Eclipse与travis-ci进行在线build操作详解

    1.关于Maven的介绍:

    Java世界中主要有三大构建工具:Ant、Maven和Gradle
    现如今用得比较多的就是gradle,Maven用得次数也还可以,Ant基本已经绝迹了

     当然Maven除了构建的功能以外,还有一些项目管理等等其他功能,这里不再赘述。

    2.Maven依赖管理系统

    我们编写一个java项目,可能会需要使用到各种各样的包,而build过程中我们是需要这些包的,因此我们必须在Maven中定义依赖关系

    在Java世界中,可以用groupId、artifactId、version组成的Coordination(坐标)唯一标识一个依赖。

    任何基于Maven构建的项目自身也必须定义这三项属性,生成的包可以是Jar包,也可以是war包或者ear包。

    以junit为例,依赖关系表示如下:

    <dependency>
     <groupId>junit</groupId>
     <artifactId>junit</artifactId>
     <version>4.12</version>
     <scope>test</scope>
    </dependency>

    关于包的依赖关系书写,可以在:http://mvnrepository.com/ 这个网站中找到,在最上面的搜索栏输入包名,就可以得到依赖关系的书写方法了

    3.travis-ci介绍

    持续集成:Continuous Integration,简称CI,意思是,在一个项目中,任何人对代码库的任何改动,都会触发CI服务器自动对项目进行构建,自动运行测试,甚至自动部署到测试环境。这可以理解成为一种坚持的方法,在进行代码的改动后,利用travis-ci进行在线build,如果成功则说明改动没有问题,否则说明修改存在一些错误。那为什么不能在自己电脑上debug而需要使用travis-ci呢?这是需要作为一个验证,可能程序运行依赖了本地有的环境配置,而用户在使用你的程序,由于他的本地没有配置,因此程序无法运行。如果在线build成功,那么程序则可以在不依赖本地环境下运行。

    4.编写.travis.yml文件

     由于build需要.travis.yml文件,在项目根目录下创建文件并编写内容如下,把文件名改成.travis.yml

    那么该文件就编写完成了

    language: java
    
    jdk:
      - oraclejdk8

    5.获得pom.xml文件

    打开eclipse,右键项目,选择Configure,再选择Convert to Maven Project。

    这样会自动生成一个pom.xml文件,这时候只需要进行依赖关系的添加就可以了

    添加过程:

    打开pom.xml,在之前提到的网站http://mvnrepository.com/中找到自己需要的包,复制<dependency></dependencies>到pom.xml中,并在其前后要加上<dependencies></dependencies>。

    示例如下

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-api</artifactId>
            <version>5.1.0</version>
            <scope>test</scope>
        </dependency>
     </dependencies>

    6.中途遇到的问题

     可能会出现如下错误

    build failure: error: unmappable character for encoding UTF-8

     我的解决办法是将程序中所有的中文都改成英文(包括注释)

    但是还可以将字符编码改成cp936 ,GBK等等,也可以改正此错误

    另外,由于大部分人使用junit都是junit5,但是在Maven依赖关系查询中直接搜索只会搜索出junit4的包

    因此使用junit5需要搜索jupiter,再将其依赖关系到pom.xml

    为什么junit4与5的包名不同,这需要进一步研究。

  • 相关阅读:
    按照分隔符拆分单元格
    Centos7通过reposync同步国内yum源-搭建局域网内网本地Yum源
    局域网vsftpd服务搭建自定义的yum仓库
    centos6编译安装ImageMagick
    tree命令常用参数
    常用mount命令
    十二月四学习报告
    十二月三学习报告
    十二月一学习报告
    十一月三十学习报告
  • 原文地址:https://www.cnblogs.com/masteryellow/p/8747915.html
Copyright © 2011-2022 走看看