## 下载安装程序
- 进入 Archiva 的项目的下载页面中,请[单击链接][1]来下载你需要的版本。
- 在这里我们选择下在 tar.gz 的版本。
![image-1][image-1]
- 你可以在这里拷贝下载链接,然后在 CentOS 上使用 wget,你也可以下载 tar.gz 文件后,上传到你的服务器上。
- 博主使用 wget 直接下载到你的服务器上。
![image-2][image-2]
- 对tar包进行解压缩,在 CentOS 上,你可以使用下面的命令来进行解压缩:
```bash
tar -xzvf apache-archiva-2.2.3-bin.tar.gz
```
- 解压缩的文件名称为 apache-archiva-2.2.3
- 在 /var下面新建一个archiva 文件夹
- 使用命令,将解压缩后的文件夹移动到 /var/archiva 文件夹下
```bash
mv apache-archiva-2.2.3 /var/archiva
```
## 运行 archiva
- 在/var/archiva/conf目录下编辑jetty.xml
```xml
<Call name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
<Set name="host"><SystemProperty name="jetty.host"/></Set>
<Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
<Set name="maxIdleTime">30000</Set>
<Set name="Acceptors">2</Set>
<Set name="statsOn">false</Set>
<Set name="confidentialPort">8443</Set>
<Set name="lowResourcesConnections">5000</Set>
<Set name="lowResourcesMaxIdleTime">5000</Set>
</New>
</Arg>
</Call>
```
- 将8080改为你想要的端口即可。
- 在 /var/archiva 路径下,运行命令:
```bash
./bin/archiva start
```
- 使用命令查看是否启动成功
```bash
ps -ef |grep archiva
```
## 确认是否安装成功
- 如果你能够通过给定的 UI 和端口看到管理员的 Web 界面的话,那么就表示你的安装已经成功了。
![image-3][image-3]
- 进入页面后可在右上角创建一个新的用户,之后要使用这个用户来继续上传下载jar包。
## 将 archiva 在 CentOS 中安装成服务
- 在 Linux环境下,archiva 安装目录下的 bin/archiva 是直接启动的,你可以为你的 CentOS 创建一个启动 link 到这个文件中,你也可以知己拷贝这个文件到 /etc/init.d 目录下,然后通过 root 来进行运行。但是在我们测试后,发现直接将 archiva 拷贝到 /etc/init.d 中是无法启动的,所以你最好是创建一个链接。
- 针对上面的完全的安装后,创建链接的命令为:
```bash
ln -sf /opt/archiva/bin/archiva /etc/init.d/archiva
```
- 然后你就可以通过以下命令来启动个关闭archiva服务了
```bash
#开启服务
service archiva start
#关闭服务
service archiva stop
```
## 配置私服仓库
- 访问你私服的地址页面,使用用户名进行登陆。
- 配置仓库地址
![image-5][image-4]
- 在页面上的【Directory】位置配置自己的仓库文件储存位置。
> 下面的【Snapshots】选项可以勾上,表示自己存储库支持快照工作
- 在如下位置记录了你的仓库地址:
> - 在这里新增一个名为`maven-public`组,将右边三个仓库全部添加进去。
![image-4][image-5]
> 这里你需要几个仓库就配置几个仓库,有几个仓库这边就会显示几个仓库组。右边的仓库地址后续配置用得到。
## settings.xml文件配置
```xml
<!-- 本地仓库-->
<localRepository>D:\WorkJarSource-Apache\repository</localRepository>
<!-- 插件库 -->
<pluginGroups>
<pluginGroup>org.mortbay.jetty</pluginGroup>
</pluginGroups>
<!-- 服务器配置 -->
<servers>
<server>
<id>releases</id>
<username>username</username>
<password>password</password>
</server>
<server>
<id>snapshots</id>
<username>username</username>
<password>password</password>
</server>
</servers>
<!-- 镜像配置 -->
<mirrors>
<mirror>
<id>public</id>
<!-- 自己的仓库地址 -->
<url>http://12.12.123.123:8080/repository/maven-public/</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
<profiles>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>public</id>
<name>Archiva Managed Internal Repository</name>
<url>http://12.12.123.123:8080/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>central</id>
<name>Archiva Managed central Repository</name>
<url>http://central</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
```
> 上述配置文件只是部分配置,可以在此基础上进行添加。
## jar包上传
- 按照图示填入对象的jar包或者pom文件信息
![image-6][image-6]
- 选择文件后点击按钮【Start Upload】,之后点击【Save Files】
- 成功上传。
[1]: https://archiva.apache.org/download.cgi
[image-1]: https://s2.ax1x.com/2019/08/10/eOgrXF.jpg
[image-2]: https://s2.ax1x.com/2019/08/10/eOgD6U.jpg
[image-3]: https://s2.ax1x.com/2019/08/10/eOgBlT.jpg
[image-4]: https://s2.ax1x.com/2019/08/10/eOWZmF.png
[image-5]: https://s2.ax1x.com/2019/08/10/eORgRx.png
[image-6]: https://s2.ax1x.com/2019/08/10/eOf6v6.png

Apache Archiva 私服搭建