maven私服nexus搭建+mybatisplus使用

目录

maven私服nexus搭建

1、maven介绍

2、maven私服仓库图示

3、maven下载安装和配置

3.1 下载maven

3.2 配置安装目录下conf\settings.xml文件

4、idea中安装配置maven

5、maven生命周期

6、maven项目对象模型(pom)

7、maven私服-nexus

7.1 下载nexus

7.2 需要在虚拟机上上传解压使用,选择-unix.tar.gz文件

7.3 解压

7.4 配置nexus

7.5 运行nexus

7.6 查看nexus的运行状态

7.7 配置私有仓库

7.8 批量上传本地文件到自定义仓库中

7.9 导入本地仓库到nexus私有仓库

7.10 idea项目中引用nexus库

7.11 最后部署项目

mybatisplus


maven私服nexus搭建

1、maven介绍

maven私服nexus搭建+mybatisplus使用_第1张图片

Maven这个单词来自于意第绪语(犹太语),意为知识的积累

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。

Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

maven体系结构

maven私服nexus搭建+mybatisplus使用_第2张图片

图片来源:https://blog.csdn.net/weixin_56697114/article/details/117638352

2、maven私服仓库图示

maven私服nexus搭建+mybatisplus使用_第3张图片

3、maven下载安装和配置

3.1 下载maven

访问网站 https://maven.apache.org,以apache-maven-3.6.3为例

3.2 配置安装目录下conf\settings.xml文件

配置本地仓库位置

示例:    D:\Java_env\maven\resp

配置镜像

由于中央仓库在境外,网络访问不稳定,故在开发过程中大多配置中央仓库的镜像仓库。

示例:


        aliyunmaven
        *
        阿里云公共仓库
        https://maven.aliyun.com/repository/public
    

配置profile

配置maven默认使用的jdk环境。

示例:


     jdk-1.8
    
          true
          1.8
    

     
    
          1.8
          1.8
          1.8
    

    

4、idea中安装配置maven

在idea中打开File/Settings,查找Maven

maven私服nexus搭建+mybatisplus使用_第4张图片

5、maven生命周期

maven私服nexus搭建+mybatisplus使用_第5张图片

图片来源:https://m.runoob.com/maven/maven-build-life-cycle.html

maven私服nexus搭建+mybatisplus使用_第6张图片

6、maven项目对象模型(pom)

maven私服nexus搭建+mybatisplus使用_第7张图片

7、maven私服-nexus

7.1 下载nexus

访问官网: https://help.sonatype.com/repomanager3/product-information/download

7.2 需要在虚拟机上上传解压使用,选择-unix.tar.gz文件

Linux服务器中创建文件夹nexus并上传压缩包nexus-3.61.0-02-unix.tar.gz

maven私服nexus搭建+mybatisplus使用_第8张图片

7.3 解压

tar -zxvf nexus-3.61.0-02-unix.tar.gz

7.4 配置nexus

进入nexus-3.61.0-02/bin文件夹

/usr/local/software/nexus/nexus-3.61.0-02/bin

编辑nexus.vmoptions文件

根据自己机器内存大小,适当配置内存。内存太小未来启动nexus会失败。

vim nexus.vmoptions

配置端口(默认8081,如不修改可忽略)

maven私服nexus搭建+mybatisplus使用_第9张图片

开放防火墙8081端口

maven私服nexus搭建+mybatisplus使用_第10张图片

7.5 运行nexus

运行命令./nexus start,starting nexus表示已启动

maven私服nexus搭建+mybatisplus使用_第11张图片

7.6 查看nexus的运行状态

nexus-3.40.1 : 服务器文件夹,启动程序等。

sonatype-work: 工作空间,数据文件。

在浏览器中输入http://本机虚拟机ip:8081,登录

maven私服nexus搭建+mybatisplus使用_第12张图片

根据查询到的账号admin的密码,登录并修改密码

maven私服nexus搭建+mybatisplus使用_第13张图片

7.7 配置私有仓库

nexus中默认仓库

maven-releases (Version policy=Release)默认只允许上传不带SNAPSHOT版本尾缀的包,默认部署策略是Disable redeploy 不允许重复上传相同版本号信息的jar,避免包版本更新以后使用方无法获取到最新的包。

maven-snapshots (Version policy=Snapshot)只允许上传带SNAPSHOT版本尾缀的包,默认部署策略是Allow redeploy,允许重复上传相同版本号信息的jar,每次上传的时候会在jar的版本号上面增加时间后缀信息。

maven-central 中央仓库的拷贝,如果环境可以访问中央仓库,则可以获取到相关的包,否则没用

maven-public 仓库组,不是实际个一个仓库地址,只是将现有的组合到一次,可以通过它看到所属组内全部仓库的jar信息

创建自定义仓库

maven私服nexus搭建+mybatisplus使用_第14张图片

选择maven2(hosted)

maven私服nexus搭建+mybatisplus使用_第15张图片

maven私服nexus搭建+mybatisplus使用_第16张图片

将新建仓库添加到maven-public群组中

选中maven-public群组,将新仓库add之后访问maven-public就可以访问自己的私有仓库了。

7.8 批量上传本地文件到自定义仓库中

首先上传本地仓库内容到linux服务器

maven私服nexus搭建+mybatisplus使用_第17张图片

编辑批量上传脚本

在本地仓库上传的文件夹(repo)下创建touch一个shell脚本,命名 repo.sh

maven私服nexus搭建+mybatisplus使用_第18张图片

编辑脚本

vim repo.sh

插入内容 i

#!/bin/bash
while getopts ":r:u:p:" opt; do
    case $opt in
        r) REPO_URL="$OPTARG"
        ;;
        u) USERNAME="$OPTARG"
        ;;
        p) PASSWORD="$OPTARG"
        ;;
    esac
done
  
find . -type f -not -path './mavenimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;

保存并退出。

添加脚本执行权限

chmod +x repo.sh

7.9 导入本地仓库到nexus私有仓库

./repo.sh -u nexus用户名 -p nexus密码 -r 仓库地址

示例:

./repo.sh -u admin -p 123 -r http://ip地址:8081/repository/****-repository/

7.10 idea项目中引用nexus库

在maven的conf/settings.xml中配置server


      ****-repository
      admin
      123
   

在maven中配置nexus镜像

中央仓库的资源从阿里云访问,其它资源来自nexus私服。


      ****maven
      *
      ****-repository
      https://ip地址:8081/repository/maven-public/
   

idea项目中配置发布管理

在项目的pom.xml文件中添加

        

                wnhz-repository

                http://192.168.198.128:8081/repository/wnhz-repository/

        

7.11 最后部署项目

在maven中运行部署,部署(deploy)项目到私服。部署成功后可到nexus网站查看。

mybatisplus

引入依赖

        mysql

         mysql-connector-java

         com.alibaba

         druid-spring-boot-starter

         1.2.18

        com.baomidou

         mybatis-plus-boot-starter

         3.5.3.1

实体类映射

@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("type_tab")
public class Type {

    @TableId(value = "type_id",type = IdType.AUTO)
    private Integer id;
    @TableField("type_name")
    private String name;
    @TableField("type_create_by")
    private String createBy;
    @TableField("type_create_time")
    private Date createTime;
    @TableField("type_update_time")
    private Date updateTime;

}

yml配置

maven私服nexus搭建+mybatisplus使用_第19张图片

Dao

@Mapper
public interface TypeDao extends BaseMapper {
}

Service 以及实现类

单元测试

@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class BookServiceImplTest {

    @Autowired
    private BookService bookService;

    @Test
    public void saveType() {
        bookService.saveType(new Type(null,"历史类","admin",new Date(),new Date()));
    }

    @Test
    public void findAll() {
        System.out.println(bookService.findAll());
    }
}

查看控制台和数据库,测试成功。

————————————————————————————————

感谢阅读,码字不易,多谢点赞!如有不当之处,欢迎反馈指出,感谢!

maven私服nexus搭建+mybatisplus使用_第20张图片

你可能感兴趣的:(maven,mybatisplus,springboot,maven,java,数据库,spring,boot,linux)