編輯:關於Android編程
Android studio構建項目有時候build.gradld構建緩慢,嚴重影響了開發心情,這僅是次要因素,最重要的是leader為了考慮團隊發展,建議搭建Maven私服,把項目模塊化,按照module各自維護,把module push到maven私服,後續開發將依賴搭建的maven私服來開發,服從leader要求,開始了maven學習之路,先了解了maven基礎知識,再搭建maven私服,測試zbar二維碼掃描上傳module和依賴私服module,便學編寫,blog就此誕生了..
http://maven.apache.org/download.cgi
cmd命令行輸入命令
mvn -v
先來認識Maven項目的目錄層次結構
根據上圖結構目錄,先新建idea.analyzesystem.maven包,再分別在其下家新建HelloWorldHelper.java和HelloWZ喎?/kf/ware/vc/" target="_blank" class="keylink">vcmxkVGVzdC5qYXZhwOCjrNTazeqzycnPyvbE2sjduvO/qsq8seDQtHBvbS54bWzOxLz+o6xwb20ueG1szsS8/rXEu/mxvr/yvNw8L3A+DQo8cHJlIGNsYXNzPQ=="brush:java;">
編寫pom文件首先呢項目定位
// 項目包名 // 模塊名稱,建議使用項目名稱 // 版本號
其次呢項目如果用了第三方包需要在pom裡面聲明,比如HelloWorld示例(代碼下載鏈接在文末)用到了junit,需要在pom聲明如下(如果你項目有用到其他的包,直接參照下列代碼結構編輯即可)
junit junit4.10
最後把pom.xml文件放置到src文件夾同級目錄,運行cmd命令行,切換到項目下面,執行命令
mvn compile
如果你是第一次執行該命令會看到如下圖效果(會下載很多包)
當你看到下圖效果表示編譯ok了
運行測試用例 mvn test 命令
項目編譯後會在src同級目錄默認生成一個target文件夾,target內部結構目錄如下
我們在運行mvn package命令生成jar包,build success之後再回到target目錄如下
mvn clean // 刪除編譯生成的target文件夾
install命令
mvn install //把 mvn package 生成的jar包安裝到本地
根據以上只是進行了一次小實踐,編譯生成一個jar供一個工程調用,操作步湊如下
這裡簡單貼一下pom.xml文件
4.0.0 idea.analyzesystem.maven2 maven-simple20.0.1SANPSHOT junit junit4.10 idea.analyzesystem.maven maven-simple0.0.1SANPSHOT
首先創建項目目錄,再進入命令提示符使用archetype命令(第一次運行會執行一些下載依賴)
mvn archetype:generate
在選擇好版本後,開始配置基本信息。
以上是一次配置信息完成自動構建,我們也可以通過一條命令直接配置完成構建。
mvn archetype:generate -DgroupId=xxx -DartifactId=xx -Dversion=xxx -Dpackage=xxx
Maven根據pom文件配置的坐標,現在本地查找,如果找不到就回去中央倉庫查找。
在Maven安裝的目錄下找到lib目錄下的maven-model-builder-3.3.9.jar,用壓縮工具打開跟進目錄你會發現pom-4.0.0.xml,所有的pom文件都繼承自它
根據浏覽器預覽可以發現中央倉庫地址
https://repo.maven.apache.org/maven2/ https://search.maven.org/ //這裡同樣可以訪問,可以檢索出你想要的jar
天朝的網絡壁壘,我們常常無法訪問國外服務器,但是可以通過訪問鏡像達到目的,maven在天朝是有鏡像倉庫的,我們可以直接訪問國內鏡像倉庫,這樣訪問速度更快更穩定。那麼如何訪問國內鏡像倉庫呢?打開安裝目錄下的conf目錄,找到settting.xml配置文件,定位到如下圖位置
提供了一個默認配置鏡像示例,根據示例修改添加鏡像配置如下:
maven.net.cn central Central mirror in china http://maven.net.cn/content/groups/public
這裡額外提供幾個鏡像配置(個人用lattern就不需要鏡像了)
nexus-osc central Nexus osc http://maven.oschina.net/content/groups/public/ osc_thirdparty thirdparty http://maven.oschina.net/content/repositories/thirdparty/ repo2 central Human Readable Name for this Mirror. http://repo2.maven.org/maven2/
添加上面的中央倉庫鏡像以後,訪問都直接訪問鏡像中央倉庫,而原中央倉庫將不再訪問。
根據坐標從中央倉庫找到的jar等下載到本地倉庫,默認c盤目錄下,如下圖
跟進目錄就可以發現自己install的jar,如idea 之前install的helloworld相關的jar
這些文件我們一般都不會放在c盤,都會自定義目錄存放,那麼如何更改倉庫位置呢?同樣離不開setting.xml
D:\workspace\maven\maven-repo //路徑 // 把setting.xml文件拷貝一份到該目錄下
Maven插件安裝就不多說了,對個人來說沒啥意思,下面來看看pom.xml的元素標簽
//之前用過了這些標簽,這裡提一下version: "0.0.0" ,第一位表示大版本號,第二位表示分支版本號,第三位表示小版本號。 //標簽指項目描述名稱 //項目地址 //項目描述 //開發人員信息 ........ //依賴列表 一個項目可能有多個依賴jar或者第三方工程,這裡使用pom就需要添加多個依賴項 //依賴范圍 ,限定作用域
依賴范圍、依賴沖突、聚合與繼承暫不做過多學習了,日後再說吧,如果你想了解可以上imooc上面搜maven相關視頻教程,基礎了解到此就好。
下載地址
http://www.sonatype.com/download-oss-sonatype
安裝下一步就好,端口號個人用的默認配置8081,你可以修改適合的端口號(如果你是下載zip,需要自己配置環境變量相關的),安裝好以後浏覽器打開地址
http://localhost:8081/
使用默認登陸賬號admin,密碼:admin123
完成登陸後創建一個倉庫如下圖
完善上面信息創建成功如下
這個路徑很重要,在後面會有提到,對於上面選擇maven2-(hosted)你有疑問,可以參考下面一篇blog
http://www.cnblogs.com/luotaoyeah/p/3791966.html
上面體驗了一把Nexus,創建倉庫,現在需要通過Android Studio項目,找到module zbar二維碼掃描module,把他上傳到創建好的Idea裡面去,流程請參考下面博客(做人不能太無恥了,勞動成果我不能隨意切去別人的哈)
http://juude.net/nexus_maven/
補充兩點:
url路徑組成就是上面我截圖標出,build.gradle裡面的路徑也是指向這裡,有個誤區我看他blog裡面提到的是”xxx/xxx/xx-id”,本人測試栽進去了
命令執行在這裡
上傳ok以後再通過下面流程可以查看
compile的組成
compile com.zbar.lib:zbar:1.0
maven私服搭建是非常有必要的,好處不多說,誰用誰知道!!本周學習進度緩慢,下周盡量加快進度,小逗逼要休假一天了,周一見..
安裝完jdk環境後,編寫第一個java程序hello.java:復制代碼 代碼如下:public class hello{ publi
Android 虛化圖片 模糊圖片 圖片毛玻璃效果。 效果如圖: 在Android可以用RenderScript方便的實現這個方法: private void blu
使用gradle構建android應用時,你總是需要這樣一個文件:build.gradle。你應該已經看過這個文件了,如果沒有看過的話,你現在就可以看一下,它沒有多少內容
單位項目要實現如下圖這種環形圖或是說特殊的餅形圖,在網上找了半天,沒有發現開源的,沒法子,只能硬著頭皮自己寫一個了。最近也在學習自定義view。正好拿這個來進行練習一下。