溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在Centos上怎么搭建Maven中央倉庫

發(fā)布時間:2021-02-20 11:30:24 來源:億速云 閱讀:229 作者:小新 欄目:服務(wù)器

這篇文章將為大家詳細(xì)講解有關(guān)在Centos上怎么搭建Maven中央倉庫,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

環(huán)境

安裝JAVA

在這里使用yum來安裝java的jdk,可以使用指令yum search java | grep jdk來查看yum下提供了哪些jdk版本。這里選擇1.8版本,安裝指令為:sudo yum install java-1.8.0-openjd

安裝完畢后還需要修改環(huán)境變量,這里的環(huán)境變量我們將在/etc/profile.d中添加一個java.sh文件中設(shè)置,指令如下:

cd /etc/profile.d
sudo vim java.sh

在里面填寫如下內(nèi)容:

#set java environment
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.7.0.75.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

然后保存并退出。(這里需要了解vim的操作,本文將不詳述)

最后在用source /etc/profile啟動環(huán)境變量,可以使用java -version查看配置是否成功。

安裝nexus

用wget獲取nexus的安裝包,這里我安裝的是2.11.2版本,指令如下:

復(fù)制代碼 代碼如下:

wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.2-03-bundle.tar.gz

然后在當(dāng)前目錄下解壓縮并進(jìn)入文件夾:

tar -zxvf nexus-2.11.2-03-bundle.tar.gz
mv nexus-2.11.2-03 nexus #重命名文件夾
cd nexus

在Centos上怎么搭建Maven中央倉庫

解壓縮后可以看到有兩個文件夾,一個是nexus服務(wù),一個是它的私有倉庫目錄

然后編輯nexus腳本,它位于NEXUS_HOME/bin中,指令如下:

vi bin/nexus

RUN_AS_USER改為RUN_AS_USER=root

在Centos上怎么搭建Maven中央倉庫

這里還需要調(diào)整你的防火墻配置,開放恰當(dāng)?shù)亩丝冢@里就不贅述了。

然后使用下面指令啟動nexus服務(wù):

./bin/nexus start

這時就可以在瀏覽器上訪問到nexus服務(wù)啦!

在Centos上怎么搭建Maven中央倉庫

可以從右上角的Log In登錄進(jìn)入系統(tǒng),默認(rèn)的角色有三個,我們先用admin的角色進(jìn)入系統(tǒng),admin的默認(rèn)密碼為admin123.

在Centos上怎么搭建Maven中央倉庫

點(diǎn)擊左側(cè)的users查看當(dāng)前系統(tǒng)的用戶??梢钥吹揭还踩齻€用戶,admin,deployment和anonymous。

admin:該用戶擁有Nexus的全部權(quán)限,默認(rèn)密碼為admin123。
deployment:該用戶能夠訪問Nexus,瀏覽倉庫內(nèi)容、搜索、上傳部署構(gòu)件,但是不能對Nexus進(jìn)行任何配置,默認(rèn)密碼為deployment123。
anonymous:該用戶對應(yīng)了所有未登錄的匿名用戶,它們可以瀏覽倉庫并進(jìn)行搜索。

在Centos上怎么搭建Maven中央倉庫

再點(diǎn)擊repositories我們可以看到有一下幾種默認(rèn)的類型,我們這里將使用third-party類型的repository,所以我們需要開啟其支持編譯上傳

在Centos上怎么搭建Maven中央倉庫

還有很多可以通過UI進(jìn)行操作,我們這里將不再贅述。下面將介紹如何在本地通過maven將打包好的jar上傳到nexus上。

Maven 打包和部署

首先我們需要修改本地的maven配置,添加遠(yuǎn)程倉庫的用戶名和密碼。首先找到本地maven的settings.xml文件??梢允褂?code>mvn -version來找到maven的地址:

在Centos上怎么搭建Maven中央倉庫

這里可以看到Maven home的地址,然后進(jìn)入這個文件夾config下的settings.xml在里面添加server。這里我們將使用third party那個倉庫。

在Centos上怎么搭建Maven中央倉庫

然后在需要打包的項(xiàng)目的maven依賴中添加如下內(nèi)容:

 <build>
  <plugins>
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
     <source>1.8</source>
     <target>1.8</target>
    </configuration>
   </plugin>

   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
     <archive>
      <manifest>
       <addClasspath>true</addClasspath>
       <classpathPrefix>lib/</classpathPrefix>
      </manifest>
     </archive>
    </configuration>
   </plugin>

   <!--部署插件-->
   <plugin>
    <artifactId>maven-deploy-plugin</artifactId>
    <executions>
     <execution>
      <id>deploy</id>
      <phase>deploy</phase>
      <goals>
       <goal>deploy</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
  </plugins>
 </build>

 <distributionManagement>
  <!-- ID需要和全局配置文件中服務(wù)器配置的ID一致 -->

  <repository>
   <id>3rd party</id>
   <url>REPOSITORY_URL</url>
  </repository>
 </distributionManagement>

這里的REPOSITORY_URL是指你的倉庫的位置,可以在之前展示的repository頁面查看到

maven打包的指令

mvn clean package

此時會在./target目錄下看到打包好的jar文件,然后使用如下指令部署:

mvn deploy:deploy-file -DgroupId=com.xy.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar -Dfile=./target/xxx.jar -Durl=http://IP:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty

之后就可以在web端看到部署上去的jar包了。

關(guān)于“在Centos上怎么搭建Maven中央倉庫”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI