maven settings文件詳解

本文是對(duì)https://maven.apache.org/settings.html的翻譯和總結(jié)

介紹

快速概覽

settings文件是一個(gè)全局的配置丸卷,并不與某一個(gè)項(xiàng)目綁定磨总。它包含了對(duì)本地庫(kù)位置的配置卵牍,遠(yuǎn)程庫(kù)服務(wù)卜壕,驗(yàn)證信息辩块。

settings.xml可以配置在兩個(gè)位置:

  • maven的安裝目錄
  • 用戶目錄:${user.home}/.m2/settings.xml

maven安裝目錄中的settings.xml是一個(gè)全局的配置最岗,用戶目錄中的settings.xml文件只對(duì)當(dāng)前用戶有效帕胆。
如果兩個(gè)文件都存在,則其內(nèi)容將合并般渡,用戶特定的settings.xml占主導(dǎo)地位懒豹。

以下是settings下的頂級(jí)元素的概述:

    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          https://maven.apache.org/xsd/settings-1.0.0.xsd">
      <localRepository/>
      <interactiveMode/>
      <offline/>
      <pluginGroups/>
      <servers/>
      <mirrors/>
      <proxies/>
      <profiles/>
      <activeProfiles/>
    </settings>

可以使用以下表達(dá)式插入settings.xml的內(nèi)容:

  1. ${user.home} 和其他所有系統(tǒng)屬性 (since Maven 3.0)
  2. ${env.HOME} 等環(huán)境變量

請(qǐng)注意,settings.xml中的<profiles>元素中定義的properties不能用于插值驯用。

settings 細(xì)節(jié)

簡(jiǎn)單值

一半的頂級(jí)元素是簡(jiǎn)單值脸秽,表示一系列值,用于描述構(gòu)建系統(tǒng)中全程有效的元素晨汹。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>${user.home}/.m2/repository</localRepository>
  <interactiveMode>true</interactiveMode>
  <offline>false</offline>
  ...
</settings>
  • localRepository:本地倉(cāng)庫(kù)的地址豹储,默認(rèn)是${user.home}/.m2/repository
  • interactiveMode:是否以交互式進(jìn)行輸入,則為true淘这,否則為false剥扣。默認(rèn)為true。例如在創(chuàng)建maven應(yīng)用上時(shí)以交互式創(chuàng)建铝穷。
1. 非交互式創(chuàng)建應(yīng)用:
mvn archetype:generate
        -DgroupId=com.howtodoinjava
        -DartifactId=DemoJavaProject
        -DarchetypeArtifactId=maven-archetype-quickstart
        -DinteractiveMode=false
2. 交互式創(chuàng)建maven應(yīng)用
mvn archetype:generate

此時(shí)钠怯,maven會(huì)讓你輸入項(xiàng)目的一些配置,例如groupId曙聂,artifactId晦炊,version

  • offline:是否在offline模式下操作。由于網(wǎng)絡(luò)設(shè)置或安全原因,此元素對(duì)無(wú)法連接到遠(yuǎn)程存儲(chǔ)庫(kù)的構(gòu)建服務(wù)器很有用断国。

Plugin Groups

該元素包含一個(gè)pluginGroup元素列表贤姆,每個(gè)元素都包含一個(gè)groupId。使用插件時(shí)搜索列表稳衬,并且命令行中未提供groupId霞捡。此列表自動(dòng)包含org.apache.maven.pluginsorg.codehaus.mojo

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <pluginGroups>
    <pluginGroup>org.eclipse.jetty</pluginGroup>
  </pluginGroups>
  ...
</settings>

例如薄疚,給定上述設(shè)置碧信,Maven命令行可以以簡(jiǎn)寫(xiě)形式執(zhí)行org.eclipse.jetty:jetty-maven-plugin:run

mvn jetty:run

Servers

用于下載和部署的存儲(chǔ)庫(kù)由POM的repositoriesdistributionManagement元素定義。但是街夭,某些設(shè)置(如用??戶名和密碼)不應(yīng)與pom.xml一起分發(fā)砰碴。此類(lèi)信息應(yīng)存在于settings.xml中的構(gòu)建服務(wù)器上。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <servers>
    <server>
      <id>server001</id>
      <username>my_login</username>
      <password>my_password</password>
      <privateKey>${user.home}/.ssh/id_dsa</privateKey>
      <passphrase>some_passphrase</passphrase>
      <filePermissions>664</filePermissions>
      <directoryPermissions>775</directoryPermissions>
      <configuration></configuration>
    </server>
  </servers>
  ...
</settings>
  • id:倉(cāng)庫(kù)的名稱
  • username板丽,password:這些元素顯示為一對(duì)呈枉,表示對(duì)此服務(wù)器進(jìn)行身份驗(yàn)證所需的登錄名和密碼。
  • privateKey, passphrase:這也是成對(duì)出現(xiàn)檐什,表示私鑰的路徑(默認(rèn)是${user.home}/.ssh/id_dsa)和密碼碴卧。密碼和密碼元素將來(lái)可能會(huì)外部化,但是現(xiàn)在必須在settings.xml文件中設(shè)置純文本乃正。
  • filePermissions, directoryPermissions:在部署時(shí)創(chuàng)建存儲(chǔ)庫(kù)文件或目錄時(shí)住册,這些是要使用的權(quán)限。每個(gè)的合法值是對(duì)應(yīng)于* nix文件權(quán)限的三位數(shù)字瓮具,例如荧飞, 664或775。

注意:如果使用私鑰登錄服務(wù)器名党,請(qǐng)確保省略<password>元素叹阔。否則赤炒,密鑰將被忽略血久。

密碼加密

一個(gè)新功能 - 服務(wù)器密碼和密碼加密已添加到2.1.0+。查看此頁(yè)面的詳細(xì)信息

MIrrors

使用鏡像的一些原因:

  • 互聯(lián)網(wǎng)上有一個(gè)同步鏡像禁悠,地理位置更近欧啤,速度更快
  • 您希望將特定存儲(chǔ)庫(kù)替換為您可以更好地控制的內(nèi)部存儲(chǔ)庫(kù)
  • 您希望運(yùn)行存儲(chǔ)庫(kù)管理器以向鏡像提供本地緩存睛藻,并且需要使用其URL

一般是第一個(gè)原因

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <mirrors>
    <mirror>
      <id>planetmirror.com</id>
      <name>PlanetMirror Australia</name>
      <url>http://downloads.planetmirror.com/pub/maven2</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
  ...
</settings>
  • id,name:id必須唯一(不要與倉(cāng)庫(kù)id一樣)邢隧,name隨意
  • url:鏡像的地址
  • mirrorOf:需要被鏡像的倉(cāng)庫(kù)id店印。例如,要指向Maven中央存儲(chǔ)庫(kù)(https://repo.maven.apache.org/maven2/)的鏡像倒慧,請(qǐng)將此元素設(shè)置為central按摘。更高級(jí)的映射包券,如repo1,repo2*,!inhouse也是可能的。這必須與鏡像ID不匹配炫贤。

有關(guān)鏡像的更深入介紹溅固,請(qǐng)閱讀鏡像設(shè)置指南

Proxies

如果你訪問(wèn)不了某一個(gè)倉(cāng)庫(kù)照激,可以使用代理发魄,用的不多盹牧,所以這里也不詳細(xì)說(shuō)明俩垃。想要了解的可以去官網(wǎng)查看。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <proxies>
    <proxy>
      <id>myproxy</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy.somewhere.com</host>
      <port>8080</port>
      <username>proxyuser</username>
      <password>somepassword</password>
      <nonProxyHosts>*.google.com|ibiblio.org</nonProxyHosts>
    </proxy>
  </proxies>
  ...
</settings>

Profiles

settings.xml中的profile元素是pom.xml profile元素的精簡(jiǎn)版本汰寓。它由activation口柳,repositoriespluginRepositoriesproperties元素組成有滑。概要文件元素僅包含這四個(gè)元素跃闹,因?yàn)樗鼈冴P(guān)注整個(gè)構(gòu)建系統(tǒng)(這是settings.xml文件的作用),而不是單個(gè)項(xiàng)目對(duì)象模型設(shè)置毛好。

如果profilesettings.xml中被激活望艺,則其值將覆蓋POM或profiles.xml文件中任何等效的ID'd配置。

Activation

該屬性可以配置配置文件的激活條件肌访,例如找默,激活條件必須是 jdk8,必須是windows等吼驶。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <profiles>
    <profile>
      <id>test</id>
      <activation>
        <activeByDefault>false</activeByDefault>
        <jdk>1.5</jdk>
        <os>
          <name>Windows XP</name>
          <family>Windows</family>
          <arch>x86</arch>
          <version>5.1.2600</version>
        </os>
        <property>
          <name>mavenVersion</name>
          <value>2.0.3</value>
        </property>
        <file>
          <exists>${basedir}/file2.properties</exists>
          <missing>${basedir}/file1.properties</missing>
        </file>
      </activation>
      ...
    </profile>
  </profiles>
  ...
</settings>

當(dāng)滿足所有指定條件時(shí)激活惩激,但不是一次都需要。

  • jdk:activation在jdk元素中有一個(gè)內(nèi)置的蟹演,以Java為中心的檢查风钻。如果測(cè)試是在與給定前綴匹配的jdk版本號(hào)下運(yùn)行,則會(huì)激活此選項(xiàng)酒请。在上面的例子中骡技,1.5.0_06將匹配。從Maven 2.1開(kāi)始也支持范圍羞反。有關(guān)支持的范圍的更多詳細(xì)信息布朦,請(qǐng)參閱maven-enforcer-plugin
  • os:os元素可以定義上面顯示的一些操作系統(tǒng)特定屬性苟弛。有關(guān)OS值的更多詳細(xì)信息喝滞,請(qǐng)參閱maven-enforcer-plugin
  • property:如果Maven檢測(cè)到相應(yīng)name=value對(duì)的屬性(可以在POM中取消引用${name}的值)膏秫,則將激活該配置文件右遭。
  • file:最后做盅,給定的文件名可以通過(guò)存在文件來(lái)激活配置文件,或者如果它丟失了窘哈。
    activation元素不是激活配置文件的唯一方式吹榴。settings.xml文件的activeProfile元素可能包含配置文件的id。它們也可以在-P標(biāo)志(例如-P test)之后通過(guò)命令行通過(guò)逗號(hào)分隔列表顯式激活滚婉。

要查看將在特定版本中激活的配置文件图筹,請(qǐng)使用maven-help-plugin

mvn help:active-profiles
Properties

Maven屬性是值占位符让腹,就像Ant中的屬性一樣远剩。可以使用符號(hào)${X}在POM內(nèi)的任何位置訪問(wèn)它們的值骇窍,其中X是屬性瓜晤。它們有五種不同的樣式,都可以從settings.xml文件中訪問(wèn):

  1. env.X:使用“env.”前綴變量將返回shell的環(huán)境變量腹纳。例如痢掠,${env.PATH}返回$path環(huán)境變量(Windows中是%PATH%
  2. project.x:POM中的點(diǎn)(.)標(biāo)記路徑將包含相應(yīng)元素的值。例如:<project><version>1.0</version></project>可通過(guò)${project.version}訪問(wèn)嘲恍。
  3. settings.xsettings.xml中的點(diǎn)(.)標(biāo)記路徑將包含相應(yīng)元素的值足画。例如:<settings><offline>false</offline></settings>可通過(guò)${settings.offline}訪問(wèn)。
  4. Java系統(tǒng)屬性:可通過(guò)java.lang.System.getProperties()訪問(wèn)的所有屬性都可用作POM屬性佃牛,例如${java.home}淹辞。
  5. x:在<properties />元素或外部文件中設(shè)置的值,該值可以用作${someVar}吁脱。
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <profiles>
    <profile>
      ...
      <properties>
        <user.install>${user.home}/our-project</user.install>
      </properties>
      ...
    </profile>
  </profiles>
  ...
</settings>

如果此配置文件被啟用桑涎,則可以在POM中使用${user.install}訪問(wèn)該屬性。

Repositories

Repositories是Maven用于填充構(gòu)建系統(tǒng)的本地存儲(chǔ)庫(kù)的項(xiàng)目的遠(yuǎn)程集合兼贡。它來(lái)自這個(gè)本地存儲(chǔ)庫(kù)攻冷,Maven稱之為插件和依賴項(xiàng)。不同的遠(yuǎn)程存儲(chǔ)庫(kù)可能包含不同的項(xiàng)目遍希,并且在啟用的profile下等曼,可以搜索它們以查找匹配的版本或快照工件。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <profiles>
    <profile>
      ...
      <repositories>
        <repository>
          <id>codehausSnapshots</id>
          <name>Codehaus Snapshots</name>
          <releases>
            <enabled>false</enabled>
            <updatePolicy>always</updatePolicy>
            <checksumPolicy>warn</checksumPolicy>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>never</updatePolicy>
            <checksumPolicy>fail</checksumPolicy>
          </snapshots>
          <url>http://snapshots.maven.codehaus.org/maven2</url>
          <layout>default</layout>
        </repository>
      </repositories>
      <pluginRepositories>
        ...
      </pluginRepositories>
      ...
    </profile>
  </profiles>
  ...
</settings>
  • releases, snapshots:這是針對(duì)每種工件凿蒜,Release或snapshot的策略禁谦。通過(guò)這兩個(gè)集合,POM可以在單個(gè)存儲(chǔ)庫(kù)中獨(dú)立于另一個(gè)類(lèi)型更改每種類(lèi)型的策略废封。例如州泊,對(duì)于開(kāi)發(fā)目的的遠(yuǎn)程庫(kù),可以決定僅啟用快照下載漂洋。
  • enabled:是否為相應(yīng)類(lèi)型(releasessnapshots)啟用此存儲(chǔ)庫(kù)遥皂,是true還是false力喷。
  • updatePolicy:此元素指定更新本地庫(kù)頻率。Maven會(huì)將本地POM的時(shí)間戳(存儲(chǔ)在存儲(chǔ)庫(kù)的maven-metadata文件中)與遠(yuǎn)程數(shù)據(jù)進(jìn)行比較演训。選項(xiàng)包括:always弟孟,daily(默認(rèn)),interva:X(其中X是以分鐘為單位的整數(shù))或never样悟。
  • checksumPolicy:當(dāng)Maven將文件部署到存儲(chǔ)庫(kù)時(shí)拂募,它還會(huì)部署相應(yīng)的校驗(yàn)和文件。您可以選擇ignore窟她,failwarn缺少或不正確的校驗(yàn)和陈症。
  • layout:。礁苗。爬凑。
Plugin Repositories

存儲(chǔ)庫(kù)是兩種主要類(lèi)型的工件的所在地。第一個(gè)是用作其他工件的依賴項(xiàng)的工件试伙。這些是位于中央的大多數(shù)插件。另一種類(lèi)型的工件是插件于样。Maven插件本身就是一種特殊的工件疏叨。因此,插件存儲(chǔ)庫(kù)可能與其他存儲(chǔ)庫(kù)分離(盡管如此穿剖,我還沒(méi)有聽(tīng)到令人信服的論據(jù))蚤蔓。在任何情況下,pluginRepositories元素塊的結(jié)構(gòu)類(lèi)似于repositories元素糊余。 pluginRepository元素指定Maven可以在哪里找到新插件的遠(yuǎn)程位置秀又。

啟用Profiles

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <activeProfiles>
    <activeProfile>env-test</activeProfile>
  </activeProfiles>
</settings>

settings.xml拼圖的最后一部分是activeProfiles元素。它包含一組activeProfile元素贬芥,包含一個(gè)profileid吐辙。無(wú)論任何環(huán)境設(shè)置如何,任何定義為activeProfileprofile id都將將被啟用蘸劈。如果沒(méi)有找到匹配的profile昏苏,則不會(huì)發(fā)生任何事。


  1. 詳細(xì)的maven屬性說(shuō)明

  2. repositorypluginRepository的順序會(huì)影響獲取遠(yuǎn)程工建的順序

  3. 鏡像匹配規(guī)則威沫,首先找到完全匹配的鏡像贤惯,如果未找到完全匹配的鏡像,但是有多個(gè)間接匹配(符合條件)棒掠,則會(huì)選擇第一個(gè)鏡像作為鏡像孵构。


maven拉取jar的過(guò)程:

maven下載jar流程.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市烟很,隨后出現(xiàn)的幾起案子颈墅,更是在濱河造成了極大的恐慌棒假,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件精盅,死亡現(xiàn)場(chǎng)離奇詭異帽哑,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)叹俏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)妻枕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人粘驰,你說(shuō)我怎么就攤上這事屡谐。” “怎么了蝌数?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,162評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵愕掏,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我顶伞,道長(zhǎng)饵撑,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,470評(píng)論 1 283
  • 正文 為了忘掉前任唆貌,我火速辦了婚禮滑潘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘锨咙。我一直安慰自己语卤,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,550評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布酪刀。 她就那樣靜靜地躺著粹舵,像睡著了一般。 火紅的嫁衣襯著肌膚如雪骂倘。 梳的紋絲不亂的頭發(fā)上眼滤,一...
    開(kāi)封第一講書(shū)人閱讀 49,806評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音稠茂,去河邊找鬼柠偶。 笑死,一個(gè)胖子當(dāng)著我的面吹牛睬关,可吹牛的內(nèi)容都是我干的诱担。 我是一名探鬼主播,決...
    沈念sama閱讀 38,951評(píng)論 3 407
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼电爹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蔫仙!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起丐箩,我...
    開(kāi)封第一講書(shū)人閱讀 37,712評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤摇邦,失蹤者是張志新(化名)和其女友劉穎恤煞,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體施籍,經(jīng)...
    沈念sama閱讀 44,166評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡居扒,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,510評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了丑慎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片喜喂。...
    茶點(diǎn)故事閱讀 38,643評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖竿裂,靈堂內(nèi)的尸體忽然破棺而出玉吁,到底是詐尸還是另有隱情,我是刑警寧澤腻异,帶...
    沈念sama閱讀 34,306評(píng)論 4 330
  • 正文 年R本政府宣布进副,位于F島的核電站,受9級(jí)特大地震影響悔常,放射性物質(zhì)發(fā)生泄漏影斑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,930評(píng)論 3 313
  • 文/蒙蒙 一这嚣、第九天 我趴在偏房一處隱蔽的房頂上張望鸥昏。 院中可真熱鬧,春花似錦姐帚、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,745評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至唯蝶,卻和暖如春九秀,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背粘我。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,983評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工鼓蜒, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人征字。 一個(gè)月前我還...
    沈念sama閱讀 46,351評(píng)論 2 360
  • 正文 我出身青樓都弹,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親匙姜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子畅厢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,509評(píng)論 2 348