IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 搭建maven私服 Android项目依赖(基于Centos下maven) -> 正文阅读

[Java知识库]搭建maven私服 Android项目依赖(基于Centos下maven)

目录

前言

搭建流程

? ? ? ?Centos安装jdk(略)

? ? ? ?Centos安装maven

? ? ? ? Centos安装nexus?

问题二、Detected execution as root user. This is NOT recommended

问题三、默认密码不是 admin admin123

问题四、如何修改访问端口号

Android 依赖库的上传

Android添加依赖 (使用)

参考


前言

? ? ? ? 组件化过程,拆分lib,将通用lib抽取成单独的module,并将其打包成了aar,就想着也是可以去迭代、上传和发布版本,就想着搭建一个自己的maven来实现依赖版本更迭,百度若干帖子,最终实现,这里记录和汇总下整个流程

搭建流程

? ? ? ?Centos安装jdk(略)

? ? ? ? ? ? ?我这里使用的是自己的阿里云服务器,之前有搭建过Jenkins,用于Android项目自动化构建,这里就不再赘述jdk的安装过程了,不了解的同学可以参考之前的文章?《基于Centos安装jdk》

? ? ? ?Centos安装maven

? ? ? ? maven 是apache的,可以去官网下载所需版本?https://maven.apache.org/download.cgi

? ? ? ?我这里使用的是 bin.tar.gz 后缀的包,下载后上传到服务器特定位置,我这里上传到了 /usr/local/ 下,进行解压以及配置环境变量即可,下面给出命令

//进入上一级目录
cd ..

//进入 /usr/local下
cd /usr/local/

//解压上传的 maven 压缩包
tar -zxvf apache-maven-3.8.2-bin.tar.gz

//进入 root用户
sudo -i 

// vim编辑进入 profile进行环境变量配置
vim /etc/profile

//添加maven环境变量
export PATH=$PATH:/usr/local/apache-maven-3.8.2/bin

//刷新环境变量
source /etc/profile

//测试mvn 能看到maven 版本号 表示成功 Apache Maven 3.8.2
mvn -v 

? ? ?

? ? ? ? 这里给出百度网盘maven包链接?https://pan.baidu.com/s/1xTibCANxzwpm2wA8x8ePiA??提取码?09yj?

? ? ? ? Centos安装nexus?

? ? ? ? ? ? ? nexus是用来管理maven仓库的软件 ,下载地址?https://my.sonatype.com/

? ? ? ? 注意下载位置 在 Latest Releases下 ,download后 Unix 才是安装在服务器上的版本?

?

这里也给出百度云链接?

链接:https://pan.baidu.com/s/1KQEY0nXU9ghwYHJm2Mn2_A?
提取码:l3p8

下载后上传到服务器特定位置 我这里还是上传到了 /usr/local/ 下,后面解压配置环境变量 运行及状态查询 ,给出下面的命令

//解压 
tar -zxvf nexus-3.33.0-01-unix.tar.gz


//进入root
sudo -i


//配置环境变量 
vim /etc/profile

export NEXUS_HOME=/usr/local/nexus-3.33.0-01
export PATH=$PATH:$NEXUS_HOME/bin


cd /nexus-3.33.0-01

//启动 
./nexus start

// 通过域名访问 nexus 浏览器输入 ip:8081 
// 默认 8081 为nexus端口

问题一、VM内存不足

我第一次操作是失败了的 ,在 nexus-3.33.0-01 下发现了 hs_err_pidxxx.log?

发现了 Out of Memory Error 错误,查了不少资料,基本上是jdk和nexus配置问题

想到了我服务器只有1核2g,找到了配置nexus jvm内存的位置,修改后成功启动并且可以访问了

//编辑 vm 配置

vim nexus.vmoptions


//修改前三行配置的 内存大小,修改前好像是2703 具体忘记了,但也大于2g了 

-Xms256m
-Xmx256m
-XX:MaxDirectMemorySize=512m

? 重写启动后? 解决了这个问题

问题二、Detected execution as root user. This is NOT recommended

常规错误,百度后解决,主要修改配置文件中以 必须以root作为用户的配置设置为false,下面给出命令

cd /usr/local/nexus-3.33.0-01/bin/

vim nexus

//修改变量 修改前为true 
run_as_root=false

问题三、默认密码不是 admin admin123

登陆时需要填写账号密码 ,但之前版本的默认密码 admin admin123 提示密码错误

进入??/usr/local/sonatype-work/nexus3/下 可以看到一个 admin.password?

使用vim 命令编辑,进入后将密码复制出来即可

问题四、如何修改访问端口号

vim /usr/local/sonatype-work/nexus3/etc/nexus.properties


// 修改下面的端口号即可

application-port=8081

注意:阿里云可能需要添加8081到安全组

我这里能顺利访问了,访问路径 ip:8081

Android 依赖库的上传

给 module /lib下 build.gradle添加上传脚本,再执行上传操作即可?

下面给出配置

plugins {
    ...
    id  'maven'
}
uploadArchives {
    configuration = configurations.archives
    repositories {
        mavenDeployer {
          //下面的xxx为服务器ip 
          //xxx 为admin 匹配的登陆密码
            repository(url: 'http://xxx.xxx.xxx.xxx:8081/repository/maven-releases/') {
                authentication(userName: 'admin', password: 'xxx')
            }
            pom.project {
                version '1.0.2'
                artifactId 'Library'
                groupId 'com.xxx.library'
                packaging 'aar'
                description 'change desc'
            }
        }
    }
}

?在进行upload 操作即可 ,gradle工具栏下 uploadArchives?

Android添加依赖 (使用)

?

project build.gradle 


allprojects {
    repositories {
        ...
        maven {
            url 'http://xxx.xxx.xxx.xxx:8081/repository/maven-releases' 
         //这个路径就是Browse下maven-release右边有一个copy按钮,复制出来的。
        }
    }
}


module下 build.gradle 

    dependencies {
        ...
         implementation ('com.xxx.library:Library:1.0.2')
    }

参考

?????????https://www.cnblogs.com/fan-gx/p/11371984.html

????????https://blog.csdn.net/u011943534/article/details/106006235

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-08-20 14:57:12  更:2021-08-20 14:59:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/21 5:18:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码