Skip to content

搭建maven私有仓库

约 1189 字大约 4 分钟

maven私有仓库

2025-06-01

基于nexus

安装包下载: 直接去官网下载即可, 这里不做过多赘述. 下载完成之后执行bin目录下的 nexus start 命令即可启动nexus. 前台运行 nexus run

报错信息如下

[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# ./bin/nexus run
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000757000000, 2835349504, 0) failed; error='Not enough space' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 2835349504 bytes. Error detail: committing reserved memory.
# An error report file with more information is saved as:
# /data/webroot/nexus-3.80.0-06/hs_err_pid1934.log

Not enough space 报错信息很明确, 空间不足, 通过 free -m(也可以使用 swapon -s , 没有任何输出代表没配置过交换空间) 查看, 结果如下:

[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# free -m
              total        used        free      shared  buff/cache   available
Mem:           3645        2154         441           0        1050        1244
Swap:             0           0           0

发现没有交换空间, 所以需要添加交换空间, 然后重启nexus即可.

检查可用的存储空间

通常,我们建立一个单独的分区作为swap。然而有时候由于硬件或软件的限制,新建分区的方式无法实现,这种情况下就可以建立一个swap文件来实现同样的功能。

开始之前,先检查一下磁盘的可用空间。输入如下指令: df -h

[root@iZ8vb961l1x1eel1ptzjiyZ nexus-3.80.0-06]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.8G     0  1.8G   0% /dev
tmpfs           1.8G     0  1.8G   0% /dev/shm
tmpfs           1.8G  624K  1.8G   1% /run
tmpfs           1.8G     0  1.8G   0% /sys/fs/cgroup
/dev/vda1        40G   29G  8.7G  77% /
/dev/vdb1        40G   12G   26G  31% /data
tmpfs           365M     0  365M   0% /run/user/0

上面是本人的服务器信息, 自己服务器信息以实际为准. /dev/vda1 是系统盘, 空间也所剩无几, /dev/vdb1 是数据盘, 数据盘剩余空间为 26G, 所以我们可以在数据盘上建立swap文件。

合适的swap空间是多大?关于这个问题有很多种选择,这取决于你的应用需求和你个人的偏好。一般来说,内存容量的两倍就是个不错的起点。

我的系统内存有4GB,如果设置8GB的swap会占据太多空间,所以我决定只设置4GB就好。

创建Swap文件

接下来我们将在文件系统上创建swap文件。我们要在数据盘(/data)下创建一个名叫swapfile的文件,当然你也可以选择你喜欢的文件名。该文件分配的空间将等于我们需要的swap空间。

最快捷的创建方式是 fallocate 命令,该命令能够创建一个预分配指定大小空间的文件。输入如下指令创建一个4GB的文件:

fallocate -l 4G

现在我们已经有了swap文件,但系统还不知道应该使用该文件作为swap,这就需要我们告知系统将该文件格式化为swap并启用起来。 首先我们需要 更改swap文件的权限,确保只有root才可读 ,否则会有很大的安全隐患。使用chmod命令进行权限操作: 最后, 需要将其设置为swap文件。输入如下指令:

mkswap /data/swapfile

然后我们需要启用swap文件。输入如下指令:

swapon /data/swapfile

现在我们已经成功创建了swap文件并启用了它。接下来我们需要设置开机自动启用swap文件。

开机自动启用swap文件

我们需要编辑 /etc/fstab 文件,该文件用于保存系统启动时需要挂载的文件系统。使用vi或vim打开该文件:

vim /etc/fstab

在文件末尾添加如下内容:

/data/swapfile swap swap defaults 0 0

保存并退出文件。现在我们已经设置好了swap文件,系统将在开机时自动启用它。 /data/swapfile 是创建的文件路径, 以实际为准.

但可是

进行到此步骤, 环境与服务均可运行, 可但是!!! 太吃资源了, 阿里云服务器, 2C4G, 4G的swap文件, 系统会接近假死, 巨卡无比.

如果你是高端用户, 资源无限, 请忽略下面信息.如果阿里云资源也是有限, 参考下面的内容:

Released under the MIT License.