日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Nginx >内容正文

Nginx

Maven仓库搭建(一):一台HTTP服务器即可(Tomcat、Apache或Nginx)

發布時間:2023/12/20 Nginx 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven仓库搭建(一):一台HTTP服务器即可(Tomcat、Apache或Nginx) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自:http://blog.csdn.net/xiao__gui/article/details/52625660

作為一個Java老程序員,多多少少都會有一些自己寫的各種常用代碼,如果每寫一個項目都把這些代碼拷貝一份到新項目比較麻煩的,打成jar包引入到項目會方便很多。如果想讓這些jar包能通過Maven引入進項目,那就需要搭建Maven倉庫。

說到Maven倉庫搭建,很多人第一想到的一般都是Nexus。Nexus的確是非常好的方案,但是總歸需要一臺服務器,一臺服務器需要花錢買和花時間維護,成本比較大。Nexus一般是公司用的比較多,個人不建議使用。

實際上除了Nexus外,還有很多Maven倉庫的搭建方案。例如可以將Maven倉庫搭建在GitHub等代碼托管平臺上,免費。甚至也可以搭建在七牛云、又拍云、阿里云對象存儲OSS、騰訊云對象存儲服務COS等云存儲上,加上CDN可以有很快的下載速度,雖然云存儲是收費的,但是一般都有免費額度,例如一個月10G流量,通常來說已經很夠用了。

本篇博文主要內容是使用HTTP服務器搭建Maven倉庫,用于學習Maven倉庫搭建原理,并不是想替代Nexus。在本系列接下來的博文中會講到如何用代碼托管平臺(如GitHub)、云存儲平臺(如七牛、阿里云OSS)來搭建Maven倉庫。

Maven倉庫搭建原理

首先,Maven有個中央倉庫:http://repo.maven.apache.org/maven2/,里面包含很多常用的開源項目的包。

在自己項目的pom.xml文件中加入一個dependency,例如spring框架的一個包:

<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>4.1.6.RELEASE</version> </dependency>

Maven會將倉庫地址、groupId、artifactId、version四個部分拼接起來,得到最終的jar包下載地址:
http://repo.maven.apache.org/maven2/org/springframework/spring-core/4.1.6.RELEASE/spring-core-4.1.6.RELEASE.jar

當然,除了jar包外還有一些其他需要的文件,具體可以查看目錄:
http://repo.maven.apache.org/maven2/org/springframework/spring-core/4.1.6.RELEASE/

如果是自己的或公司內部使用的jar包,在中央倉庫肯定是沒有的,這就需要配置一個自己的repository,指定包的下載地址。

<repository><id>my-repository</id><url>http://115.159.216.216:8080/</url> </repository> ... <dependency><groupId>com.xxg.cloudstorage</groupId><artifactId>cloudstorage</artifactId><version>1.0.0</version> </dependency>

同理,此時Maven會根據repository配置的url生成文件下載地址:
http://115.159.216.216:8080/com/xxg/cloudstorage/cloudstorage/1.0.0/cloudstorage-1.0.0.jar

HTTP服務器搭建Maven倉庫

有了上面的理論基礎,用HTTP服務器搭建Maven倉庫就不難了,無非是把所需要的文件按照以上規則放到對應的目錄下,HTTP服務器提供下載地址。

首先需要一臺服務器,再安裝一個HTTP服務器軟件,如Tomcat、Apache、Nginx等,任選其一即可。

例如使用Java程序員喜聞樂見的Tomcat,使用Tomcat的webapps/ROOT目錄作為Maven倉庫的文件存放目錄。

jar包部署到倉庫

如果想把自己的jar包部署到倉庫上供自己或別人引用,只有jar文件是不夠的,里面上面Spring倉庫的目錄可以看到除了jar,還有pom、md5、sha1等各種文件,這些文件都可以通過mvn deploy命令來生成。

方法一:手動部署

在項目的pom.xml中添加:

<distributionManagement><repository><id>file-repository</id><url>file://D:\abc</url></repository> </distributionManagement>

運行mvn deploy命令可以看到在D:\abc目錄下生成了目錄和各種文件。將整個目錄上傳到Tomcat的webapps/ROOT,此時在瀏覽器上訪問以下地址即可通過HTTP直接下載jar包:
http://115.159.216.216:8080/com/xxg/cloudstorage/cloudstorage/1.0.0/cloudstorage-1.0.0.jar

方法二:SSH自動部署

如果服務器是Linux服務器,還可以直接通過mvn deploy通過scp方式將整個目錄直接傳到服務器的Tomcat的webapps/ROOT目錄下,省去手動上傳文件的步驟。

pom.xml配置服務器地址和文件路徑:

<distributionManagement><repository><id>my-server</id><url>scp://115.159.216.216/home/ubuntu/coder/apache-tomcat-8.5.5/webapps/ROOT</url></repository> </distributionManagement><build><extensions><extension><groupId>org.apache.maven.wagon</groupId><artifactId>wagon-ssh</artifactId><version>2.10</version></extension></extensions> </build>

在Maven的settings.xml中配置服務器的SSH用戶名和密碼:

<server><id>my-server</id><username>root</username><password>your-password</password> </server>

Maven倉庫使用

部署完成后,已經可以直接下載jar包,那么就可以在其他項目中通過dependency加入這個包的依賴了。

<repository><id>my-repository</id><url>http://115.159.216.216:8080/</url> </repository> ... <dependency><groupId>com.xxg.cloudstorage</groupId><artifactId>cloudstorage</artifactId><version>1.0.0</version> </dependency>

總結

以上是生活随笔為你收集整理的Maven仓库搭建(一):一台HTTP服务器即可(Tomcat、Apache或Nginx)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。