精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

五分鐘快速掌握Maven的核心概念

開發 前端
前兩天在一個技術群,有人還在問maven中groupId、artifactId、version這些關鍵字的含義是什么,于是,我覺得還是很有必要來聊聊Maven中的這些核心概念。

前兩天在一個技術群,有人還在問maven中groupId、artifactId、version這些關鍵字的含義是什么,于是,我覺得還是很有必要來聊聊Maven中的這些核心概念。

成功不是將來才有的,而是從決定去做的那一刻起,持續累積而成。

今天我們來學習Maven中的核心概念。了解了這些核心概念后,我們后面就可以更深層次的學習和使用Maven。

坐標

坐標的概念

來自百度百科

能夠確定一個點在空間的位置的一個或一組數,叫做這個點的坐標。通常由這個點到垂直相交的若干條固定的直線的距離來表示 。這些直線叫做坐標軸。坐標軸的數目在平面上為2(x,y),在空間里為3(x,y,z)。

其實就是可以標識平面中或空間里唯一的一個點。

Maven中的坐標

Maven其中一個核心的作用就是管理項目的依賴,引入我們所需的各種jar包等。為了能自動化的解析任何一個Java構件,Maven必須將這些Jar包或者其他資源進行唯一標識,這是管理項目的依賴的基礎,也就是我們要說的坐標。包括我們自己開發的項目,也是要通過坐標進行唯一標識的,這樣才能才其它項目中進行依賴引用。

案例

依賴時候:比如下面我們依賴junit的jar包。

  1. <!-- pom.xml中 --> 
  2. <dependency> 
  3.   <groupId>junit</groupId> 
  4.   <artifactId>junit</artifactId> 
  5.   <version>3.8.1</version> 
  6.   <scope>test</scope> 
  7. </dependency> 

項目中定義我們的項目將打成jar或者war包。

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" 
  3.              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  4.              xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
  5.         <modelVersion>4.0.0</modelVersion> 
  6.         <groupId>com.tian</groupId> 
  7.         <artifactId>maven-demo</artifactId> 
  8.         <version>1.0-SNAPSHOT</version> 
  9.         <!-- 默認是jar --> 
  10.         <packaging>jar</packaging> 
  11. </project> 

最后打出來的jar或war的形式的形式:

  1. artifactid-version.jar 
  2. artifactid-version.war 

packaging 標簽默認是jar,所以通常我們在沒有指定打成jar包還是war的時候,最終打成的就是jar包。

Maven坐標的組成

「groupId」組織標識(包名)。定義當前Maven項目隸屬的實際項目。首先,Maven項目和實際項目不一定是一對一的關系。比如SpringFrameWork這一實際項目,其對應的Maven項目會有很多,如spring-core,spring-context等。這是由于Maven中模塊的概念,因此,一個實際項目往往會被劃分成很多模塊。其次,groupId不應該對應項目隸屬的組織或公司。原因很簡單,一個組織下會有很多實際項目,如果groupId只定義到組織級別,而后面我們會看到,artifactId只能定義Maven項目(模塊),那么實際項目這個層次將難以定義。最后,groupId的表示方式與Java包名的表達方式類似,通常與域名反向一一對應。上例中,groupId為junit,是不是感覺很特殊,這樣也是可以的,因為全世界就這么個junit,它也沒有很多分支。

「artifactId」項目名稱。該元素定義當前實際項目中的一個Maven項目(模塊),推薦的做法是使用實際項目名稱作為artifactId的前綴。比如上例中的junit,junit就是實際的項目名稱,方便而且直觀。在默認情況下,maven生成的構件,會以artifactId作為文件頭,如junit-3.8.1.jar,使用實際項目名稱作為前綴,就能方便的從本地倉庫找到某個項目的構件。

「version」項目的當前版本或者我們要依賴jar的版本。該元素定義了使用構件的版本,如上例中junit的版本是3.8.1,你也可以改為4.0表示使用4.0版本的junit。

「packaging」項目的打包方式,最為常見的jar和war兩種,默認是jar。定義Maven項目打包的方式,使用構件的什么包。首先,打包方式通常與所生成構件的文件擴展名對應,如上例中沒有packaging,則默認為jar包,最終的文件名為junit-3.8.1.jar。也可以打包成war等。

「classifier」 該元素用來幫助定義構建輸出的一些附件。附屬構件與主構件對應,如上例中的主構件為junit-3.8.1.jar,該項目可能還會通過一些插件生成如junit-3.8.1-javadoc.jar,junit-3.8.1-sources.jar, 這樣附屬構件也就擁有了自己唯一的坐標。

上述5個元素中,groupId、artifactId、version是必須定義的,packaging是可選的(默認為jar),而classfier是不能直接定義的,需要結合插件使用。

Maven為什么使用坐標呢?

Maven世界里擁有大量構建,我們需要找一個用來唯一標識一個構建的統一規范。

擁有了統一規范,就可以把查找工作交給機器。

maven依賴管理

依賴

依賴通常表現為:我需要你的東西,就像情侶之間相互依賴,夫妻之間相互依賴,人依賴于水,人依賴于糧食等。

在Maven中則表現為:項目中用到b.jar包的每個類,此時的項目就依賴b.jar。

復雜點關系就是多層依賴:a.jar包依賴b.jar包,還有可能b.jar包依賴c.jar。這種現象也可以稱之為依賴傳遞性。

我們的項目間接性的依賴了b.jar。

依賴配置

Maven中依賴配置案例如下:

  1. <!--添加依賴配置--> 
  2. <dependencies> 
  3.   <!--項目要使用到junit的jar包,所以在這里添加junit的jar包的依賴--> 
  4.   <dependency> 
  5.       <groupId>junit</groupId> 
  6.       <artifactId>junit</artifactId> 
  7.       <version>4.9</version> 
  8.       <scope>test</scope> 
  9.   </dependency> 
  10.   <!--項目要使用到Hello的jar包,所以在這里添加Hello的jar包的依賴--> 
  11.   <dependency> 
  12.       <groupId>com.tian.maven</groupId> 
  13.       <artifactId>user-service</artifactId> 
  14.       <version>0.0.1-SNAPSHOT</version> 
  15.       <scope>compile</scope><!-- 依賴范圍--> 
  16.   </dependency> 
  17. </dependencies> 

依賴范圍

所謂的依賴范圍就是指我們在什么需要依賴的jar。有的是在編譯的時候就需要,有的是測試的時候需要等。

依賴范圍scope有以下6種:

「compile」 默認編譯依賴范圍。對于編譯,測試,運行三種classpath都有效。即在編譯、測試和運行的時候都要使用該依賴jar包;

「test」測試依賴范圍。只對于測試classpath有效。而在編譯和運行項目時無法使用此類依賴,典型的是JUnit,它只用于編譯測試代碼和運行測試代碼的時候才需要;

「provided」已提供依賴范圍。對于編譯,測試的classpath都有效,但對于運行無效。因為由容器已經提供,例如servlet-api.jar,這個在編譯和測試的時候需要用到,但是在運行的時候,web容器已經提供了,就不需要maven幫忙引入了。

「runtime」運行時依賴范圍,使用此依賴范圍的maven依賴,對于編譯測試、運行測試和運行項目的classpath有效,但在編譯主代碼時無效,比如jdbc驅動實現,運行的時候才需要具體的jdbc驅動實現。

「system」系統依賴范圍,使用system范圍的依賴時必須通過systemPath元素顯示地指定依賴文件的路徑,不依賴Maven倉庫解析,所以可能會造成建構的不可移植(即就是在你的電腦上可能沒問題,但是到別人電腦上那就說不清楚了),有點類似provided ,注意這個system謹慎使用。

  1. <systemPath>${java.home}/lib/rt.jar</systemPath> 

「import」僅pom在本節中的類型依賴項上支持此作用域。它指示依賴關系將被指定的pom部分中的有效依賴關系列表替換。由于已替換它們,因此范圍為的依賴項import實際上不會參與限制依賴項的可傳遞性,在springboot和springcloud中用到的比較多。

以上六種范圍中,常用的有compile、test、runtime、provided 。

依賴范圍不僅可以控制與三種classpath的關系,還對傳遞性依賴產生影響,依賴關系圖如下:

「注意」預期這應該是運行時范圍,因此必須明確列出所有編譯依賴項。但是,如果您依賴的庫從另一個庫擴展了一個類,則兩者都必須在編譯時可用。因此,即使編譯時間相關性是可傳遞的,它們仍保留為編譯范圍。

Maven倉庫管理

Maven倉庫

用來統一存儲所有Maven共享構建的位置,說白了就是用來存放jar包的,我們本地每次編譯的時候沒有對應jar包是編譯通不過的,我們一個項目中是需要很多jar的依賴的,這時候就知道倉庫的重要性了。

Maven倉庫布局

根據Maven坐標定義每個構建在倉庫中唯一存儲路徑,大致為:

groupId/artifactId/version/artifactId-version.packaging

本地倉庫

在上一篇文章中,每個用戶只有一個本地倉庫,默認是在~/.m2/repository/,~代表的是用戶目錄 。為了便于管理,一般都會自己搞一目錄,專門用來存儲本地倉庫內容。這樣我們開發的時候,依賴那個jar就直接去我們的本地倉庫repository中去查找,如果沒有,我們會從中央倉庫中拉取。

中央倉庫

基本上保存了對外開發的所有jar包,Maven默認的遠程倉庫,(外國網站)URL地址:http://search.maven.org/ 。還有比如阿里的倉庫,我們在開發的時候,由于網絡原因,很多人都喜歡使用阿里的這個倉庫:http://maven.aliyun.com 。

這時候我們本地倉庫和中央倉庫的關系:

私服

大部分公司都會搭建私服,私服就是一種特殊的遠程倉庫,它是架設在局域網內的倉庫 。比如公司搭建局域網,公司也搞個倉庫,然后開發人員就直接使用公司搭建的私服就行了,這樣大大減少了網絡開銷以及開發成本(有時候外網訪問很慢,會浪費大家開發時間的)。

這樣開發人員每次需要每個jar包就直接從公司的私服里拉取,不需要使用外網去中央倉庫里拉取了??傊澕s時間和節約網絡開始。并且有些企業還是不給外網的,這時候你就知道這個私服的重要性了。

增加了私服后,本地倉庫+私服+中央倉庫的關系圖:

面試中也頻繁被問:本地倉庫、私服以及中央倉庫是什么關系?

Maven生命周期

Maven的 生命周期:從我們的項目構建,一直到項目發布的這個過程。

每個階段的說明:

為了完成 default 生命周期,這些階段(包括其他未在上面羅列的生命周期階段)將被按順序地執行。

Maven 有以下三個標準的生命周期:

  • Clean Lifecycle 在進行真正的構建之前進行一些清理工作。
  • Default Lifecycle 構建的核心部分,編譯,測試,打包,部署等等。
  • Site Lifecycle 生成項目報告,站點,發布站點。

這三個標準它們是相互獨立的,你可以僅僅調用clean來清理工作目錄,僅僅調用site來生成站點。當然你也可以直接運行 mvn clean install site運行所有這三套生命周期。

運行任何一個階段的時候,它前面的所有階段都會被運行,這也就是為什么我們運行mvn install 的時候,代碼會被編譯,測試,打包。此外,Maven的插件機制是完全依賴Maven的生命周期的,因此理解生命周期至關重要。

Maven插件

Maven是不做具體事情的,只是規定了生命周期的各個階段和步驟,由集成到 Maven 中的插件完成。

Maven的核心僅僅定義了抽象的生命周期,具體的任務都是交由插件完成的。

每個插件都能實現多個功能,每個功能就是一個插件目標。

Maven的生命周期與插件目標相互綁定,以完成某個具體的構建任務, 例如compile就是插件maven-compiler-plugin的一個插件目標。

關于插件,這里就說個大概,后續會出一篇文章專門來說Maven插件。

排除不需要依賴

  1. <dependency> 
  2.     <groupId>com.tian.maven</groupId> 
  3.     <artifactId>my-maven</artifactId> 
  4.     <version>1.0.0</version> 
  5.     <exclusions> 
  6.         <exclusion> 
  7.             <groupId>com.tian.maven</groupId> 
  8.             <artifactId>your-maven</artifactId> 
  9.         </exclusion> 
  10.     </exclusions> 
  11. </dependency> 

上面使用使用exclusions元素排除了my-maven->your-maven依賴的傳遞,也就是my-maven->your-maven不會被傳遞到當前項目中。

exclusions中可以有多個exclusion元素,可以排除一個或者多個依賴的傳遞,聲明exclusion時只需要寫上groupId、artifactId就可以了,version可以省略。

總結

本文講述Maven坐標,Maven依賴管理、Maven倉庫管理、Maven生命周期以及簡單介紹了Maven插件。有了這些概念作為鋪墊,我們就可以更深層次去體會,為什么我們在工作室這么用的。

本文轉載自微信公眾號「Java后端技術全棧」,可以通過以下二維碼關注。轉載本文請聯系Java后端技術全棧公眾號。

 

責任編輯:武曉燕 來源: Java后端技術全棧
相關推薦

2021-06-07 09:51:22

原型模式序列化

2009-11-17 14:50:50

Oracle調優

2021-03-23 15:35:36

Adam優化語言

2020-12-07 11:23:32

Scrapy爬蟲Python

2021-10-20 06:58:10

工具低代碼無代碼

2025-01-24 08:38:47

2009-11-05 10:55:22

Visual Stud

2017-01-10 09:07:53

tcpdumpGET請求

2023-08-29 06:50:01

Javamaven

2020-10-14 11:31:41

Docker

2021-01-13 09:23:23

優先隊列React二叉堆

2018-01-08 16:19:04

微信程序輪播圖

2023-07-25 09:00:27

RocketMQ開源

2025-05-22 10:00:00

DockerRedis容器

2016-12-08 09:24:48

leveldb數據分布式存儲

2023-03-27 09:40:01

GoWebAssembl集成

2022-02-23 20:38:32

云原生集群Postgres

2025-03-31 08:15:00

LLM大型語言模型人工智能

2024-09-18 23:50:24

Python內存生成器

2009-11-16 10:53:30

Oracle Hint
點贊
收藏

51CTO技術棧公眾號

玖玖精品在线视频| 在线亚洲午夜片av大片| 最近免费观看高清韩国日本大全| 91丨九色丨丰满| 中文乱码免费一区二区三区下载| 日韩一级黄色大片| 国产玉足脚交久久欧美| 涩涩视频在线观看免费| 美女高潮久久久| 欧美精品一二区| 国产国语性生话播放| h1515四虎成人| 亚洲免费在线视频| 欧美一区二区三区电影在线观看 | 激情欧美一区二区| 国内精品久久久久影院优| 国产一级二级在线观看| 日韩成人免费av| 亚洲成a人片在线不卡一二三区 | 日韩av在线综合| 秋霞影院午夜丰满少妇在线视频| 成人一区在线看| 国产精品69精品一区二区三区| 在线免费看av网站| 久久97视频| 欧美一级高清大全免费观看| 99999精品视频| 成人午夜在线影视| 国产女同互慰高潮91漫画| 成人激情直播| 中文字幕丰满人伦在线| 精品成人国产| 日韩亚洲国产中文字幕| 亚洲天堂网一区二区| 国产日韩在线观看视频| 91福利国产成人精品照片| 国产精品videossex国产高清| 成年人免费在线视频| 成人av网站在线| 成人黄色影片在线| 国产精品免费精品一区| 狠狠综合久久| 久久精品久久久久久| wwwwxxxx国产| 麻豆视频一区| 日韩精品一区二区三区中文不卡| 亚洲久久中文字幕| 日韩大尺度黄色| 亚洲国产精品久久久久秋霞影院| 艳母动漫在线免费观看| 波多野结衣在线影院| 91美女蜜桃在线| 国产精品久久久久久久免费大片| 6—12呦国产精品| 日韩精品电影在线观看| 日本成人黄色片| 日韩特黄一级片| 欧美特黄一级| 美女福利精品视频| 深夜福利影院在线观看| 国产精品99久久精品| 在线亚洲欧美视频| 自拍偷拍你懂的| jiujiure精品视频播放| 亚洲午夜久久久影院| 亚洲人人夜夜澡人人爽| 伊人成综合网yiren22| 亚洲国产欧美精品| 一级特黄a大片免费| 高清精品视频| 亚洲成人黄色网址| 五月天激情小说| 超碰在线成人| 亚洲国产精品小视频| 老熟妇精品一区二区三区| 国产精品网站在线看| 亚洲国产精品字幕| 亚洲第一成人网站| 欧洲视频一区| 久久久精品999| 国产suv精品一区二区68| 亚洲91中文字幕无线码三区| 欧美情侣性视频| 久久久久久久久精| 亚洲国产免费看| 欧美一区第一页| 亚洲欧美日韩激情| 美女一区二区三区在线观看| 成人久久一区二区| 精品国产伦一区二区三| 成人动漫av在线| 蜜桃导航-精品导航| 国产女人在线观看| 中文字幕一区二| 奇米777四色影视在线看| av有码在线观看| 色av成人天堂桃色av| 超碰人人草人人| av日韩精品| 亚洲人免费视频| 色偷偷男人天堂| 欧美在线首页| 欧洲永久精品大片ww免费漫画| 这里只有精品国产| 国产精品123区| 免费中文日韩| 免费在线看黄网站| 福利视频一区二区| 日本一二区免费| 久久久久观看| 最近2019好看的中文字幕免费| 九九热精品在线观看| 久久动漫亚洲| 亚洲a中文字幕| 涩涩视频在线观看免费| 亚洲欧美日韩国产综合在线| 欧美精品久久久久久久自慰| 日韩制服一区| 亚洲精品一区二区三区四区高清| 日韩毛片无码永久免费看| 你懂的成人av| 国产精品成人国产乱一区| 亚洲男人第一天堂| 国产精品久久久久久久久免费樱桃 | 国产又粗又猛又爽又黄91精品| 国产精品视频在线免费观看| 一区二区高清不卡| 日韩欧美中文在线| 亚洲AV成人精品| 日韩在线观看| 欧洲成人性视频| 亚洲精品字幕在线观看| 国产亚洲成人一区| 国产日韩中文字幕| 亚洲日本在线播放| 亚洲男人都懂的| 激情五月婷婷久久| 欧美日韩看看2015永久免费| 久热精品视频在线观看| 国产第一页在线观看| av一区二区三区黑人| 亚洲五码在线观看视频| 99蜜月精品久久91| 国产亚洲美女久久| aaa在线视频| 91老司机福利 在线| 强开小嫩苞一区二区三区网站| av有声小说一区二区三区| 亚洲精品videossex少妇| 可以直接看的黄色网址| 狠狠色丁香久久婷婷综合_中 | 国精品**一区二区三区在线蜜桃| 免费久久久一本精品久久区| 欧美三级网站| 亚洲激情在线观看视频免费| 久久精品女人毛片国产| 国产福利91精品一区二区三区| 一本—道久久a久久精品蜜桃| 国产成人精选| 日韩中文字幕不卡视频| 中文字幕自拍偷拍| 中文字幕制服丝袜成人av| 中文字幕天天干| 第一会所亚洲原创| 国产精品久久久久久一区二区| 黄视频在线观看免费| 日本丶国产丶欧美色综合| 亚洲一级中文字幕| 日韩电影一二三区| 在线视频不卡国产| 国产一精品一av一免费爽爽| 久久视频免费观看| 99视频在线观看免费| 一区二区欧美在线观看| 美女扒开腿免费视频| 国产欧美日本| 日本一区二区三区视频在线播放 | 精品国内亚洲在观看18黄| 最近中文字幕在线观看视频| 中文字幕一区二区三区四区不卡| 免费黄频在线观看| 在线精品福利| 欧美一区二视频在线免费观看| 成人欧美magnet| 在线视频欧美日韩精品| 国产乱码久久久久| 亚洲一区视频在线| 欧美做受xxxxxⅹ性视频| 奇米一区二区三区av| 综合网五月天| 91成人午夜| 欧美又大又粗又长| 欧美日本高清| 日韩精品中文字幕一区| 成人毛片在线播放| 自拍偷拍亚洲激情| 亚洲av成人精品一区二区三区| 久久资源在线| 青少年xxxxx性开放hg| 久久悠悠精品综合网| 国产精品久久久久久久久久久久 | 石原莉奈一区二区三区在线观看| 亚洲永久激情精品| 第一区第二区在线| 国产精品一区二区三区久久| 欧美xxxx少妇| 夜夜嗨av一区二区三区四区| 性生活视频软件| 一本大道综合伊人精品热热| 登山的目的在线| 91在线精品一区二区三区| 欧美激情第3页| 9色精品在线| 中文字幕一区二区三区精彩视频| 全球av集中精品导航福利| 国产日本欧美一区二区三区| 91超碰在线免费| 色噜噜狠狠色综合网图区| 欧美熟女一区二区| 91精品国产综合久久精品app| 全部毛片永久免费看| 亚洲另类在线视频| 日本美女xxx| a美女胸又www黄视频久久| 国产免费中文字幕| 日日夜夜一区二区| 国产日韩av网站| 欧美国内亚洲| 天堂va久久久噜噜噜久久va| 欧美sss在线视频| 国产精品一区二区久久| 亚洲一区站长工具| 久久久亚洲影院你懂的| 麻豆传媒视频在线观看免费| 亚洲欧美中文字幕| 日本高清视频网站| 精品国产伦一区二区三区免费 | av中文在线| 精品中文视频在线| 四虎免费在线观看| 欧美大黄免费观看| aa视频在线免费观看| 欧美日韩你懂得| av首页在线观看| 色婷婷亚洲精品| 日本黄色片视频| 亚洲国产成人高清精品| 久草视频在线资源站| 亚洲啪啪综合av一区二区三区| 国产一二三av| 国产精品免费久久| 欧美亚洲色综久久精品国产| 久久久久久一二三区| 在线国产视频一区| 久久久99免费| 国产精品密蕾丝袜| 久久精品一区二区三区四区| 97超碰在线资源| 91啦中文在线观看| 久久久视频6r| 久久久亚洲午夜电影| 在线免费观看麻豆| 久久免费看少妇高潮| 9.1成人看片免费版| 久久久噜噜噜久噜久久综合| 久操视频免费看| 国产日韩欧美精品一区| www久久久久久久| 中文字幕视频一区| 福利所第一导航| 一区二区三区欧美久久| 国产一级在线观看视频| 亚洲va天堂va国产va久| 草久久免费视频| 色婷婷久久久亚洲一区二区三区 | 少妇熟女视频一区二区三区| 成人av资源在线| 亚洲第一香蕉网| 国产精品嫩草影院av蜜臀| 国产又粗又硬又长又爽| 亚洲一级片在线观看| 国产午夜在线播放| 91久久精品一区二区三区| 伊人免费在线观看高清版| 91精品国产综合久久精品性色| 成人免费观看在线视频| 精品无人区乱码1区2区3区在线| 国产高清免费av在线| 久久综合五月天| 国产99在线观看| 国产精品久久久久久久久久免费 | 中文字幕国产一区| 中文字幕电影av| 亚洲mv在线观看| 91视频在线视频| 欧美一区二区三区电影| 无码精品视频一区二区三区| 国产一区二区久久精品| 国产成人在线视频免费观看| 97在线免费视频| 成人在线观看免费播放| 国产精品久久波多野结衣| 国内精品久久久久久久久电影网| 大桥未久一区二区| 亚洲中字黄色| 99中文字幕在线| 91蜜桃网址入口| 一区二区视频免费看| 日韩欧美国产网站| 国产成人毛毛毛片| 亚洲视频视频在线| h片视频在线观看| 国产精品一二三视频| 日本成人a网站| 天天干天天色天天爽| 久久国产高清| 国产ts在线观看| 国产人成亚洲第一网站在线播放 | 欧美片一区二区三区| 国产一区二区精品调教| 国产欧美一区二区三区另类精品| 色综合蜜月久久综合网| 91视频最新入口| 国产成人一区二区精品非洲| 国产免费嫩草影院| 福利微拍一区二区| 蜜臀久久精品久久久久| 久久国产精品网站| 日韩毛片免费看| 人禽交欧美网站免费| 在线亚洲免费| 亚洲美女高潮久久久| 综合欧美亚洲日本| 中文字幕精品一区二| 亚洲剧情一区二区| av男人的天堂在线观看| 99久久免费国| 一区二区在线| 97超碰人人爽| 国产精品欧美久久久久无广告 | 亚洲色图网站| 簧片在线免费看| 国产午夜精品在线观看| 在线天堂中文字幕| 日韩hd视频在线观看| 波多野结衣在线播放| 91手机在线视频| 亚洲理论电影网| 爱豆国产剧免费观看大全剧苏畅| 亚洲国产电影在线观看| 久久永久免费视频| 亚洲欧美三级在线| 香蕉视频亚洲一级| 色狠狠久久av五月综合| 日日夜夜精品免费视频| 在线免费观看日韩av| 色综合欧美在线视频区| 牛牛热在线视频| 国产成人短视频| 国产精品欧美日韩一区| 日韩在线xxx| 欧美国产精品v| 精品国产www| 最新国产精品拍自在线播放 | 欧美日韩精品在线| 涩爱av在线播放一区二区| 国产成+人+综合+亚洲欧洲| 禁断一区二区三区在线| 久久久精品麻豆| 中文字幕亚洲一区二区av在线 | 中文字幕免费在线播放| 激情懂色av一区av二区av| 日韩成人黄色| 国产成人在线亚洲欧美| 日韩电影在线视频| 国产三级三级看三级| 亚洲蜜臀av乱码久久精品| 亚洲av无码一区二区三区性色| 久久久伊人欧美| 亚洲欧美成人vr| 日本在线观看免费视频| 自拍偷拍欧美精品| 天天干免费视频| 日本国产欧美一区二区三区| 久久理论电影| 18深夜在线观看免费视频| 亚洲成av人片在线观看| 国产一区精品| 95av在线视频| 99香蕉国产精品偷在线观看 | 国产精品久久久久久久久夜色| 中文字幕在线视频日韩| jizz性欧美23| 日本va中文字幕| 亚洲免费观看高清完整| 四虎精品在永久在线观看| 国产日韩精品视频| 1024成人| 中国美女黄色一级片| 亚洲成成品网站|