真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

maven多模塊項(xiàng)目怎么對(duì)外輸出為一個(gè)構(gòu)件

本篇內(nèi)容介紹了“maven多模塊項(xiàng)目怎么對(duì)外輸出為一個(gè)構(gòu)件”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)專(zhuān)注于蘿北網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供蘿北營(yíng)銷(xiāo)型網(wǎng)站建設(shè),蘿北網(wǎng)站制作、蘿北網(wǎng)頁(yè)設(shè)計(jì)、蘿北網(wǎng)站官網(wǎng)定制、微信平臺(tái)小程序開(kāi)發(fā)服務(wù),打造蘿北網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供蘿北網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。

臺(tái)式機(jī)生產(chǎn)線(xiàn)我的maven代碼工程 xxx
顯示器xxx-web
主機(jī)xxx-app
鍵盤(pán)xxx-domian
鼠標(biāo)xxx-infrastration
臺(tái)式機(jī)xxx-all.jar 

雖然不能完全對(duì)應(yīng)的上,我拿開(kāi)源的dubbo描述一下我的問(wèn)題。

dubbo開(kāi)發(fā)者:dubbo的開(kāi)源項(xiàng)目采用maven多模塊開(kāi)發(fā)的,內(nèi)部模塊分的非常細(xì)。

充分利用了臺(tái)式電腦的分模塊設(shè)計(jì)思想。

maven多模塊項(xiàng)目怎么對(duì)外輸出為一個(gè)構(gòu)件

dubbo使用者:我只需要引入一個(gè)dubbo-all的依賴(lài)即可使用dubbo;

好比臺(tái)式機(jī)的用戶(hù),我只需要一個(gè)可使用的臺(tái)式機(jī),按照使用手冊(cè)來(lái)即可,內(nèi)部的東西我不想知道;

只需要引入坐標(biāo):

 
      com.alibaba
      dubbo
   		2.7.0
      true
    

背景

最近的業(yè)務(wù)開(kāi)發(fā)工作碰到過(guò)一個(gè)類(lèi)似的問(wèn)題。

問(wèn)題回答
where are we?現(xiàn)狀公共組件程序員開(kāi)發(fā)采用多模塊開(kāi)發(fā)一個(gè)組件,業(yè)務(wù)程序員希望只引用一個(gè)組件
where are we go?目的多模塊開(kāi)發(fā)一個(gè)公共組件,業(yè)務(wù)項(xiàng)目只需要引入一個(gè)模塊
how we go there?實(shí)現(xiàn)路徑maven-shade-plugin

實(shí)現(xiàn)路徑

shade

shade提供了一個(gè)把你的maven多模塊構(gòu)件和構(gòu)件的依賴(lài)打包為一個(gè)超級(jí)jar包的能力。

它綁定到了maven生命周期的package階段,提供了唯一的mavn的goal指令shade:shade

它的系統(tǒng)運(yùn)行環(huán)境要求是:

運(yùn)行需求說(shuō)明
maven3最低maven3
jdk7最低jdk7
內(nèi)存和磁盤(pán)無(wú)最低空間需求

用法如下:


 
  
  
   
    
     org.apache.maven.plugins
     maven-shade-plugin
     3.2.4
    
   
  
  
  
   
    org.apache.maven.plugins
    maven-shade-plugin
    3.2.4
     
    
    
     
      package
      
       shade
      
     
    
   
  
 

常見(jiàn)配置屬性:

ApacheLicenseResourceTransformer

防止證書(shū)重復(fù)

ApacheNoticeResourceTransformer

準(zhǔn)備合并通知

AppendingTransformer

作為資源添加

ComponentsXmlResourceTransformer

聚合components.xml 從

DontIncludeResourceTransformer

排除資源文件

IncludeResourceTransformer

包含的資源文件

ManifestResourceTransformer

manifest的條目

ServicesResourceTransformer

合并meta-info/services 資源

XmlAppendingTransformer

添加xml內(nèi)容作為一個(gè)xml資源

dubbo

主要看dubbo-all模塊的配置:


    4.0.0
    
        org.apache.dubbo
        dubbo-parent
        ${revision}
        ../pom.xml
    
    dubbo
    jar
    dubbo-all
    The all in one project of dubbo
    
        
            org.apache.dubbo
            dubbo-config-api
            ${project.version}
            compile
            true
        
    
    
        
            
                org.apache.maven.plugins
                maven-shade-plugin
                
                    
                        package
                        
                            shade
                        
                        
                            true
                            false
                            
                                
                                    com.alibaba:hessian-lite
																		org.apache.dubbo:dubbo-config-api
                                
                            
                            
                                
                                
                                    
                                        META-INF/dubbo/internal/org.apache.dubbo.common.compiler.Compiler
                                    
                                
                                
                                    
                                        META-INF/dubbo/internal/org.apache.dubbo.common.config.configcenter.DynamicConfigurationFactory
                                    
                                
                            
                            
                                
                                    org.apache.dubbo:dubbo
                                    
                                        
                                        com/**
                                        org/**
                                        
                                        META-INF/dubbo/**
                                    
                                
                            
                        
                    
                
            
        
    

為控制代碼占用太多內(nèi)容,上面貼的pom配置為刪除了大量相同或者類(lèi)似的節(jié)點(diǎn)。 下面拆解一下它的結(jié)構(gòu):

核心節(jié)點(diǎn)說(shuō)明
dependency直接依賴(lài),即包含的當(dāng)前工程中的模塊
pluginshade

shade的核心配置

配置說(shuō)明(見(jiàn)名知意,先猜測(cè))
phase掛接在maven的生命周期的package階段
goal提供唯一的goal指令 shade
createSourcesJar是否創(chuàng)建源碼到j(luò)ar包中,方便ide直接查看到源碼
promoteTransitiveDependencies是否打包間接依賴(lài)
artifactSet-includes-include包含的子模塊或者排除的子模塊
 transformers-transformer-resource轉(zhuǎn)換器配置
excludes>-filter過(guò)濾器中排出某些文件

具體看上面的代碼。

“maven多模塊項(xiàng)目怎么對(duì)外輸出為一個(gè)構(gòu)件”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


文章題目:maven多模塊項(xiàng)目怎么對(duì)外輸出為一個(gè)構(gòu)件
文章起源:http://weahome.cn/article/pcidej.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部