Maven 配置文件说明

参考:
https://maven.apache.org/settings.html

<settings>

This is the configuration file for Maven.
这是 Maven 的配置文件。
It can be specified at two levels:
可以在两个层面指定:

  1. User Level.
    用户层。
    This settings.xml file provides configuration for a single user, and is normally provided in ${user.home}/.m2/settings.xml.
    settings.xml 文件为单个用户提供配置,通常在 ${user.home}/.m2/settings.xml
    NOTE: This location can be overridden with the CLI option:
    注意:可以使用 CLI 选项覆盖此位置:
    -s /path/to/user/settings.xml
  2. Global Level.
    全局层。
    This settings.xml file provides configuration for all Maven users on a machine (assuming they're all using the same Maven installation).
    settings.xml 文件为机器上的所有 Maven 用户提供配置(假设他们都使用相同的 Maven 安装)。
    It's normally provided in ${maven.conf}/settings.xml.
    通常在 ${maven.conf}/settings.xml
    NOTE: This location can be overridden with the CLI option:
    注意:可以使用 CLI 选项覆盖此位置:
    -gs /path/to/global/settings.xml

The sections in this sample file are intended to give you a running start at getting the most out of your Maven installation.
本示例文件中的部分旨在让您从 Maven 安装中获得最大收益。
Where appropriate, the default values (values used when the setting is not specified) are provided.
在适当的情况下,会提供默认值(未指定设置时使用的值)。

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

<localRepository>

The path to the local repository maven will use to store artifacts.
Maven 用于存储工件(artifact)的本地仓库(repository)的路径。

Default: ${user.home}/.m2/repository

<localRepository>/path/to/local/repo</localRepository>

<interactiveMode>

This will determine whether maven prompts you when it needs input.
这将决定 maven 是否在需要输入时提示您。
If set to false, maven will use a sensible default value, perhaps based on some other setting, for the parameter in question.
如果设置为 false,maven 将使用一个合理的默认值,可能是基于其他一些设置,用于询问中的参数。

Default: true

<interactiveMode>true</interactiveMode>

<offline>

Determines whether maven should attempt to connect to the network when executing a build.
确定 maven 在执行构建时是否应尝试连接到网络。
This will have an effect on artifact downloads, artifact deployment, and others.
这将对工件下载、工件部署和其他方面产生影响。

Default: false

<offline>false</offline>

<pluginGroups>

This is a list of additional group identifiers that will be searched when resolving plugins by their prefix, i.e. when invoking a command line like "mvn prefix:goal".
这是一个附加组标识符的列表,当通过前缀解析插件时,即调用 "mvn prefix:goal" 之类的命令行时,将搜索这些组标识符。
Maven will automatically add the group identifiers "org.apache.maven.plugins" and "org.codehaus.mojo" if these are not already contained in the list.
如果列表中还没有包含组标识符 "org.apache.Maven.plugins" 和 "org.codehaus.mojo",Maven 将自动添加这些标识符。

<pluginGroups>
    <pluginGroup>com.your.plugins</pluginGroup>
</pluginGroups>

<pluginGroup>

Specifies a further group identifier to use for plugin lookup.
指定用于插件查找的其他组标识符。

<pluginGroup>com.your.plugins</pluginGroup>

<proxies>

This is a list of proxies which can be used on this machine to connect to the network.
这是可以在这台机器上连接到网络的代理列表。
Unless otherwise specified (by system property or command-line switch), the first proxy specification in this list marked as active will be used.
除非另有规定(通过系统属性或命令行开关),否则将使用此列表中标记为活动的第一个代理规范。

<proxies>
    <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <username>proxyuser</username>
      <password>proxypass</password>
      <host>proxy.host.net</host>
      <port>80</port>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
    </proxy>
</proxies>

<proxy>

Specification for one proxy, to be used in connecting to the network.
用于连接网络的一个代理的规范。

<proxy>
    <id>optional</id>
    <active>true</active>
    <protocol>http</protocol>
    <username>proxyuser</username>
    <password>proxypass</password>
    <host>proxy.host.net</host>
    <port>80</port>
    <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>

<servers>

This is a list of authentication profiles, keyed by the server-id used within the system.
这是一个身份验证配置文件列表,由系统中使用的 server-id 设置密钥。
Authentication profiles can be used whenever maven must make a connection to a remote server.
只要 maven 必须连接到远程服务器,就可以使用身份验证配置文件。

<servers>
    <server>
      <id>deploymentRepo</id>
      <username>repouser</username>
      <password>repopwd</password>
    </server>

    <!-- Another sample, using keys to authenticate. -->
    <server>
      <id>siteServer</id>
      <privateKey>/path/to/private/key</privateKey>
      <passphrase>optional; leave empty if not used.</passphrase>
    </server>
  </servers>

<server>

Specifies the authentication information to use when connecting to a particular server,
指定连接到特定服务器时要使用的身份验证信息,
identified by a unique name within the system (referred to by the 'id' attribute below).
该信息由系统中的唯一名称标识(由下面的 'id' 属性引用)。

NOTE: You should either specify username/password OR privateKey/passphrase, since these pairings are used together.
注意:您应该指定 username/passwordprivateKey/passphrase,因为这些配对是一起使用的。

<server>
    <id>deploymentRepo</id>
    <username>repouser</username>
    <password>repopwd</password>
</server>
<server>
    <id>siteServer</id>
    <privateKey>/path/to/private/key</privateKey>
    <passphrase>optional; leave empty if not used.</passphrase>
</server>

<mirrors>

This is a list of mirrors to be used in downloading artifacts from remote repositories.
这是用于从远程仓库下载工件的镜像列表。
It works like this: a POM may declare a repository to use in resolving certain artifacts.
它的工作原理是这样的:POM 可以声明一个用于解析某些工件的仓库。
However, this repository may have problems with heavy traffic at times, so people have mirrored it to several places.
然而,这个仓库有时可能会遇到流量大的问题,所以人们已经将它镜像到了几个地方。
That repository definition will have a unique id, so we can create a mirror reference for that repository, to be used as an alternate download site.
该仓库定义将有一个唯一的 id,因此我们可以为该仓库创建一个镜像引用,用作备用下载站点。
The mirror site will be the preferred server for that repository.
镜像站点将是该仓库的首选服务器。

<mirrors>
    <mirror>
        <id>mirrorId</id>
        <mirrorOf>repositoryId</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://my.repository.com/repo/path</url>
    </mirror>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
</mirrors>

<mirror>

Specifies a repository mirror site to use instead of a given repository.
指定要使用的仓库镜像站点,而不是给定的仓库。
The repository that this mirror serves has an ID that matches the mirrorOf element of this mirror.
此镜像服务的仓库的 ID 与此镜像的 mirrorOf 元素匹配。
IDs are used for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
ID 用于继承和直接查找目的,在镜像集中必须是唯一的。

<mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
    <blocked>false</blocked>
</mirror>

<profiles>

This is a list of profiles which can be activated in a variety of ways, and which can modify the build process.
这是一个配置信息列表,可以通过多种方式激活,并且可以修改构建过程。
Profiles provided in the settings.xml are intended to provide local machine-specific paths and repository locations which allow the build to work in the local environment.
settings.xml 中提供的配置信息旨在提供特定于本地机器的路径和存储库位置,以允许在本地环境中执行构建。

For example, if you have an integration testing plugin - like cactus - that needs to know where your Tomcat instance is installed,
例如,如果您有一个集成测试插件(比如 cactus),需要知道 Tomcat 实例的安装位置,
you can provide a variable here such that the variable is dereferenced during the build process to configure the cactus plugin.
那么您可以在这里提供一个变量,以便在构建过程中取消对该变量的引用,以配置 cactus 插件。

As noted above, profiles can be activated in a variety of ways.
如上所述,配置文件可以通过多种方式激活。
One way - the activeProfiles section of this document (settings.xml) - will be discussed later.
其中一种方法——本文档的 activeProfiles 部分(settings.xml)——将在后面讨论。
Another way essentially relies on the detection of a system property, either matching a particular value for the property, or merely testing its existence.
另一种方法本质上依赖于对系统属性的检测,或者匹配属性的特定值,或者仅仅测试其存在性。
Profiles can also be activated by JDK version prefix, where a value of '1.4' might activate a profile when the build is executed on a JDK version of '1.4.2_07'.
配置信息也可以通过 JDK 版本前缀激活,其中当在 JDK 版本 '1.4.2_07' 上执行构建时,值 '1.4' 可能会激活配置信息。
Finally, the list of active profiles can be specified directly from the command line.
最后,可以直接从命令行指定活动配置信息的列表。

NOTE: For profiles defined in the settings.xml, you are restricted to specifying only artifact repositories, plugin repositories, and free-form properties to be used as configuration variables for plugins in the POM.
注意:对于在 settings.xml 中定义的配置信息,只能指定工件库、插件库和自由格式属性,以用作 POM 中插件的配置变量。

<profiles>
    <profile>
        ...
    </profile>
</profiles>

<profile>

Specifies a set of introductions to the build process, to be activated using one or more of the mechanisms described above.
指定要使用上述一个或多个机制激活的一组构建过程的说明。
For inheritance purposes, and to activate profiles via <activatedProfiles/> or the command line, profiles have to have an ID that is unique.
出于继承目的,要通过 <activatedProfiles/> 或命令行激活配置信息,配置信息必须具有唯一的 ID。

An encouraged best practice for profile identification is to use a consistent naming convention for profiles,
一个推荐的配置信息识别的最佳实践是对配置信息使用一致的命名约定,
such as 'env-dev', 'env-test', 'env-production', 'user-jdcasey', 'user-brett', etc.
例如 'env-dev'、'env-test'、'env-production'、'user-jdcasey'、'user-brett' 等。
This will make it more intuitive to understand what the set of introduced profiles is attempting to accomplish,
这将使您更直观地了解所引入的配置信息集试图实现的目标,
particularly when you only have a list of profile id's for debug.
尤其是当您只有一个用于调试的配置文件 id 列表时。

This profile example uses the JDK version to trigger activation, and provides a JDK-specific repo.
这个配置信息示例使用 JDK 版本触发激活,并提供了一个特定于 JDK 的 repo。

<profile>
    <id>jdk-1.4</id>

    <activation>
        <jdk>1.4</jdk>
    </activation>

    <repositories>
        <repository>
            <id>jdk14</id>
            <name>Repository for JDK 1.4 builds</name>
            <url>http://www.myhost.com/maven/jdk14</url>
            <layout>default</layout>
            <snapshotPolicy>always</snapshotPolicy>
        </repository>
    </repositories>
</profile>

Here is another profile, activated by the system property 'target-env' with a value of 'dev',
下面是另一个配置信息,由系统属性 'target-env' 激活,其值为'dev',
which provides a specific path to the Tomcat instance.
它提供了 Tomcat 实例的特定路径。
To use this, your plugin configuration might hypothetically look like:
要使用它,你的插件配置可能会假设如下:

...
<plugin>
    <groupId>org.myco.myplugins</groupId>
    <artifactId>myplugin</artifactId>

    <configuration>
        <tomcatLocation>${tomcatPath}</tomcatLocation>
    </configuration>
</plugin>
...

NOTE: If you just wanted to inject this configuration whenever someone set 'target-env' to anything, you could just leave off the <value/> inside the activation-property.
注意:如果您只是想在有人将 'target-env' 设置为任何内容时注入此配置,您可以在 activation 属性中去掉 <value/>

<profile>
    <id>env-dev</id>

    <activation>
        <property>
            <name>target-env</name>
            <value>dev</value>
        </property>
    </activation>

    <properties>
        <tomcatPath>/path/to/tomcat/instance</tomcatPath>
    </properties>
</profile>

<activeProfiles>

List of profiles that are active for all builds.
对所有构件活动的配置文件列表。

<activeProfiles>
    <activeProfile>alwaysActiveProfile</activeProfile>
    <activeProfile>anotherAlwaysActiveProfile</activeProfile>
</activeProfiles>

附:settings.xml

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
在一个或多个贡献者许可协议下授权给 Apache 软件基金会(ASF)。
See the NOTICE file distributed with this work for additional information regarding copyright ownership.
有关版权所有权的更多信息,请参阅随本文件一起分发的 NOTICE 文件。
The ASF licenses this file to you under the Apache License, Version 2.0 (the "License");
ASF 根据 Apache 许可证2.0版(下称“许可证”)向您许可该文件;
you may not use this file except in compliance with the License.
除非遵守许可证,否则不得使用此文件。
You may obtain a copy of the License at
您可以通过以下网址获得许可证副本

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
除非适用法律要求或书面同意,否则根据许可证分发的软件是按“原样”分发的,没有任何保证或条件,无论明示或暗示。
See the License for the specific language governing permissions and limitations under the License.
请参阅许可证,以了解管理许可证下权限和限制的特定语言。

<?xml version="1.0" encoding="UTF-8"?>

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<!--
 | This is the configuration file for Maven. It can be specified at two levels:
 |
 |  1. User Level. This settings.xml file provides configuration for a single user,
 |                 and is normally provided in ${user.home}/.m2/settings.xml.
 |
 |                 NOTE: This location can be overridden with the CLI option:
 |
 |                 -s /path/to/user/settings.xml
 |
 |  2. Global Level. This settings.xml file provides configuration for all Maven
 |                 users on a machine (assuming they're all using the same Maven
 |                 installation). It's normally provided in
 |                 ${maven.conf}/settings.xml.
 |
 |                 NOTE: This location can be overridden with the CLI option:
 |
 |                 -gs /path/to/global/settings.xml
 |
 | The sections in this sample file are intended to give you a running start at
 | getting the most out of your Maven installation. Where appropriate, the default
 | values (values used when the setting is not specified) are provided.
 |
 |-->
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->

  <!-- interactiveMode
   | This will determine whether maven prompts you when it needs input. If set to false,
   | maven will use a sensible default value, perhaps based on some other setting, for
   | the parameter in question.
   |
   | Default: true
  <interactiveMode>true</interactiveMode>
  -->

  <!-- offline
   | Determines whether maven should attempt to connect to the network when executing a build.
   | This will have an effect on artifact downloads, artifact deployment, and others.
   |
   | Default: false
  <offline>false</offline>
  -->

  <!-- pluginGroups
   | This is a list of additional group identifiers that will be searched when resolving plugins by their prefix, i.e.
   | when invoking a command line like "mvn prefix:goal". Maven will automatically add the group identifiers
   | "org.apache.maven.plugins" and "org.codehaus.mojo" if these are not already contained in the list.
   |-->
  <pluginGroups>
    <!-- pluginGroup
     | Specifies a further group identifier to use for plugin lookup.
    <pluginGroup>com.your.plugins</pluginGroup>
    -->
  </pluginGroups>

  <!-- proxies
   | This is a list of proxies which can be used on this machine to connect to the network.
   | Unless otherwise specified (by system property or command-line switch), the first proxy
   | specification in this list marked as active will be used.
   |-->
  <proxies>
    <!-- proxy
     | Specification for one proxy, to be used in connecting to the network.
     |
    <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <username>proxyuser</username>
      <password>proxypass</password>
      <host>proxy.host.net</host>
      <port>80</port>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
    </proxy>
    -->
  </proxies>

  <!-- servers
   | This is a list of authentication profiles, keyed by the server-id used within the system.
   | Authentication profiles can be used whenever maven must make a connection to a remote server.
   |-->
  <servers>
    <!-- server
     | Specifies the authentication information to use when connecting to a particular server, identified by
     | a unique name within the system (referred to by the 'id' attribute below).
     |
     | NOTE: You should either specify username/password OR privateKey/passphrase, since these pairings are
     |       used together.
     |
    <server>
      <id>deploymentRepo</id>
      <username>repouser</username>
      <password>repopwd</password>
    </server>
    -->

    <!-- Another sample, using keys to authenticate.
    <server>
      <id>siteServer</id>
      <privateKey>/path/to/private/key</privateKey>
      <passphrase>optional; leave empty if not used.</passphrase>
    </server>
    -->
  </servers>

  <!-- mirrors
   | This is a list of mirrors to be used in downloading artifacts from remote repositories.
   |
   | It works like this: a POM may declare a repository to use in resolving certain artifacts.
   | However, this repository may have problems with heavy traffic at times, so people have mirrored
   | it to several places.
   |
   | That repository definition will have a unique id, so we can create a mirror reference for that
   | repository, to be used as an alternate download site. The mirror site will be the preferred
   | server for that repository.
   |-->
  <mirrors>
    <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->
    <!--mirror>
      <id>maven-default-http-blocker</id>
      <mirrorOf>external:http:*</mirrorOf>
      <name>Pseudo repository to mirror external repositories initially using HTTP.</name>
      <url>http://0.0.0.0/</url>
      <blocked>true</blocked>
    </mirror-->
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>

  <!-- profiles
   | This is a list of profiles which can be activated in a variety of ways, and which can modify
   | the build process. Profiles provided in the settings.xml are intended to provide local machine-
   | specific paths and repository locations which allow the build to work in the local environment.
   |
   | For example, if you have an integration testing plugin - like cactus - that needs to know where
   | your Tomcat instance is installed, you can provide a variable here such that the variable is
   | dereferenced during the build process to configure the cactus plugin.
   |
   | As noted above, profiles can be activated in a variety of ways. One way - the activeProfiles
   | section of this document (settings.xml) - will be discussed later. Another way essentially
   | relies on the detection of a system property, either matching a particular value for the property,
   | or merely testing its existence. Profiles can also be activated by JDK version prefix, where a
   | value of '1.4' might activate a profile when the build is executed on a JDK version of '1.4.2_07'.
   | Finally, the list of active profiles can be specified directly from the command line.
   |
   | NOTE: For profiles defined in the settings.xml, you are restricted to specifying only artifact
   |       repositories, plugin repositories, and free-form properties to be used as configuration
   |       variables for plugins in the POM.
   |
   |-->
  <profiles>
    <!-- profile
     | Specifies a set of introductions to the build process, to be activated using one or more of the
     | mechanisms described above. For inheritance purposes, and to activate profiles via <activatedProfiles/>
     | or the command line, profiles have to have an ID that is unique.
     |
     | An encouraged best practice for profile identification is to use a consistent naming convention
     | for profiles, such as 'env-dev', 'env-test', 'env-production', 'user-jdcasey', 'user-brett', etc.
     | This will make it more intuitive to understand what the set of introduced profiles is attempting
     | to accomplish, particularly when you only have a list of profile id's for debug.
     |
     | This profile example uses the JDK version to trigger activation, and provides a JDK-specific repo.
    <profile>
      <id>jdk-1.4</id>

      <activation>
        <jdk>1.4</jdk>
      </activation>

      <repositories>
        <repository>
          <id>jdk14</id>
          <name>Repository for JDK 1.4 builds</name>
          <url>http://www.myhost.com/maven/jdk14</url>
          <layout>default</layout>
          <snapshotPolicy>always</snapshotPolicy>
        </repository>
      </repositories>
    </profile>
    -->

    <!--
     | Here is another profile, activated by the system property 'target-env' with a value of 'dev',
     | which provides a specific path to the Tomcat instance. To use this, your plugin configuration
     | might hypothetically look like:
     |
     | ...
     | <plugin>
     |   <groupId>org.myco.myplugins</groupId>
     |   <artifactId>myplugin</artifactId>
     |
     |   <configuration>
     |     <tomcatLocation>${tomcatPath}</tomcatLocation>
     |   </configuration>
     | </plugin>
     | ...
     |
     | NOTE: If you just wanted to inject this configuration whenever someone set 'target-env' to
     |       anything, you could just leave off the <value/> inside the activation-property.
     |
    <profile>
      <id>env-dev</id>

      <activation>
        <property>
          <name>target-env</name>
          <value>dev</value>
        </property>
      </activation>

      <properties>
        <tomcatPath>/path/to/tomcat/instance</tomcatPath>
      </properties>
    </profile>
    -->
  </profiles>

  <!-- activeProfiles
   | List of profiles that are active for all builds.
   |
  <activeProfiles>
    <activeProfile>alwaysActiveProfile</activeProfile>
    <activeProfile>anotherAlwaysActiveProfile</activeProfile>
  </activeProfiles>
  -->
</settings>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,837评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,551评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,417评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,448评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,524评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,554评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,569评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,316评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,766评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,077评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,240评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,912评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,560评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,176评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,425评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,114评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,114评论 2 352

推荐阅读更多精彩内容