亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

用maven將dubbo工程打成jar包運(yùn)行

shengguo / 725人閱讀

摘要:打包方式使用打包插件在文件最后新增以下代碼。表達(dá)式支持通配符打成一個(gè)包如果需要將依賴的包都達(dá)到一個(gè)包中運(yùn)行,可以使用這個(gè)插件。

maven打包方式

使用maven打包插件maven-jar-plugin
pom.xml文件最后新增以下代碼。
maven-dependency-plugin是指將依賴的jar包復(fù)制到指定目錄
maven-resources-plugin將依賴的resources復(fù)制到指定目錄

    
        
               
                org.apache.maven.plugins  
                maven-jar-plugin  
                2.6  
                  
                      
                          
                        
                            true  
                            
                            lib/  
                            com.alibaba.dubbo.container.Main  
                          
                      
                      
                    ${project.build.directory}/maven-archiver

                     
                         *.*
                         config/*
                         config/tencent/*
                         META-INF/spring/*
                     
                  
              


            
                org.apache.maven.plugins
                maven-dependency-plugin
                2.8
                
                    
                        copy-dependencies
                        package
                        
                            copy-dependencies
                        
                        
                            
                                ${project.build.directory}/maven-archiver/lib
                            
                        
                    
                
            

            
                maven-resources-plugin
                
                    
                        copy-resources
                        package
                        
                            copy-resources
                        
                        
                            ${project.build.directory}/maven-archiver/resources
                            
                                
                                    ${basedir}/src/main/resources
                                    true

                                
                            
                        
                    
                
            
        
    

運(yùn)行jar包方式

打包之后的目錄結(jié)構(gòu)
包含了class文件,以及需要的配置文件信息(不包含excludes的配置文件)

MANIFEST.MF中包含了運(yùn)行需要的信息

Class-Path: lib/commons-beanutils-1.8.3.jar lib/commons-betwixt-0.8.jar
...
Main-Class: com.alibaba.dubbo.container.Main

java -jar
啟動(dòng)命令
java -jar 執(zhí)行命令時(shí),會(huì)用到目錄META-INFMANIFEST.MF中Main-Class的參數(shù),這個(gè)是在打包的時(shí)候指定函數(shù)的入口。

java -jar x-0.0.1-SNAPSHOT.jar

java -cp
啟動(dòng)命令

java -cp .:x-0.0.1-SNAPSHOT.jar packname.mainclassname 

因?yàn)槲夜こ讨行枰猛獠康膔esources文件所以我通常用這種方式啟動(dòng)
配置文件地址是絕對(duì)路徑

java -cp /Users/username/resources:dubbo-service-1.0.jar com.alibaba.dubbo.container.Main 

-cp-classpath是相同的效果
java -cp 是指定運(yùn)行所依賴其他類的路徑,通常是類庫(kù)、jar 包之類,多個(gè)依賴在Window 上用分號(hào)";"隔開(kāi),linux上用":"隔開(kāi)。
表達(dá)式支持通配符

java -cp .:/Users/username/*.jar   packname.mainclassname 

打成一個(gè)jar包

如果需要將依賴的jar包都達(dá)到一個(gè)jar包中運(yùn)行,可以使用maven-shade-plugin這個(gè)插件。
這個(gè)插件的功能主要是:將依賴的jar包打包到當(dāng)前jar包,并且在打包的時(shí)候把類重命名,可以解決jar包的多版本沖突,具體可以查詢官方插件文檔。

參考文檔
maven官方插件文檔

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/74353.html

相關(guān)文章

  • 超詳細(xì),新手都能看懂 !使SpringBoot+Dubbo 搭建一個(gè)簡(jiǎn)單的分布式服務(wù)

    Github 地址:https://github.com/Snailclimb/springboot-integration-examples ,歡迎各位 Star。 目錄: 使用 SpringBoot+Dubbo 搭建一個(gè)簡(jiǎn)單分布式服務(wù) 實(shí)戰(zhàn)之前,先來(lái)看幾個(gè)重要的概念 什么是分布式? 什么是 Duboo? Dubbo 架構(gòu) 什么是 RPC? 為什么要用 Dubbo? 開(kāi)始實(shí)戰(zhàn) 1 ...

    chengtao1633 評(píng)論0 收藏0
  • Maven學(xué)習(xí)筆記

    摘要:學(xué)習(xí)筆記先生,您在寫(xiě)代碼嗎不,我們正在完成一項(xiàng)偉大的工程。于是打算重新學(xué)習(xí)一下。中央倉(cāng)庫(kù)鏡像為了分擔(dān)中央倉(cāng)庫(kù)的流量,提升用戶的訪問(wèn)速度。生成項(xiàng)目報(bào)告,站點(diǎn),發(fā)布站點(diǎn)。修改源碼后也需要逐個(gè)手動(dòng)進(jìn)行操作。 maven學(xué)習(xí)筆記 先生,您在寫(xiě)代碼嗎? 不,我們正在完成一項(xiàng)偉大的工程。 前言 在剛學(xué)maven時(shí),我就把maven當(dāng)作一個(gè)引入jar包的工具而已,以前是自己下載jar包,現(xiàn)在是只用...

    tomlingtm 評(píng)論0 收藏0
  • spring boot 配合maven打成可執(zhí)行jar,構(gòu)建鏡像部署到docker容器中

    摘要:本篇文章將介紹應(yīng)用如何打成包并將構(gòu)建為鏡像部署到中應(yīng)用打包需要配合打包將以下代碼放到應(yīng)用文件中執(zhí)行打打包命令命令執(zhí)行完成后在應(yīng)用目錄下會(huì)有打出來(lái)打包此包會(huì)包含應(yīng)用所有打依賴直接拷出這個(gè)包在命令行執(zhí)行應(yīng)用名就可以運(yùn)行了構(gòu)建鏡像 本篇文章將介紹springboot應(yīng)用如何打成jar包,并將jar構(gòu)建為docker鏡像部署到docker中 應(yīng)用打包 需要配合spring-boot-mave...

    y1chuan 評(píng)論0 收藏0
  • Spring Boot 打成的可執(zhí)行 jar ,為什么不能被其他項(xiàng)目依賴?

    摘要:從這里我們就可以看出,兩個(gè),雖然都是包,但是內(nèi)部結(jié)構(gòu)是完全不同的,因此一個(gè)可以直接執(zhí)行,另一個(gè)則可以被其他項(xiàng)目依賴。一次打包兩個(gè)一般來(lái)說(shuō),直接打包成可執(zhí)行就可以了,不建議將作為普通的被其他的項(xiàng)目所依賴。 前兩天被人問(wèn)到這樣一個(gè)問(wèn)題: 松哥,為什么我的 Spring Boot 項(xiàng)目打包成的 jar ,被其他項(xiàng)目依賴之后,總是報(bào)找不到類的錯(cuò)誤? 大伙有這樣的疑問(wèn),就是因?yàn)檫€沒(méi)搞清楚可執(zhí)行...

    Ali_ 評(píng)論0 收藏0
  • Maven多模塊項(xiàng)目搭建+整合SSM框架

    摘要:繼承作用就是避免配置重復(fù),對(duì)于子項(xiàng)目來(lái)說(shuō)應(yīng)該關(guān)心父項(xiàng)目是怎么樣配置的。聚合字面理解就是聚在一起合作完成工作,就是將子模塊聚集起來(lái)完成相應(yīng)的項(xiàng)目需求父工程的搭建項(xiàng)目結(jié)構(gòu)在父工程中,主要負(fù)責(zé)完成依賴的版本管理,并不是實(shí)際的依賴。 從大二開(kāi)始就一直關(guān)注segmentFault,在問(wèn)題專區(qū)幫忙回答一些自己知曉的問(wèn)題;在寫(xiě)這篇文章之前我一直會(huì)在朋友圈發(fā)一些自己遇到的問(wèn)題以及解決辦法,這是第一次寫(xiě)...

    liaosilzu2007 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<