
# Java开发环境搭建
基于[收集连接信息](https://support.huaweicloud.com/devg-kafka/Kafka-config.html)的介绍，假设您已经获取了实例连接相关的信息，以及配置好客户端的网络环境。本章节以生产与发送消息的Demo为例，介绍Kafka客户端的环境配置。
#### 开发环境
- Maven Apache Maven 3.0.3及以上版本，可至[Maven官方下载页面](https://maven.apache.org/download.cgi)下载。
  
- JDK Java Development Kit 1.8.111及以上版本，可至[Oracle官方下载页面](https://www.oracle.com/technetwork/java/javase/downloads/index.html)下载。
  安装后注意配置JAVA的环境变量。
  
- IntelliJ IDEA 获取并安装IntelliJ IDEA，可至[IntelliJ IDEA官方网站](https://www.jetbrains.com/idea/)下载。
  
 
#### 操作步骤
1. 下载[Demo包](https://dms-demos.obs.cn-north-1.myhuaweicloud.com/kafka-sdk-java-demo.zip)。
   
   下载后解压，有如下文件：
   表1Kafka Demo文件清单 
   | 文件名                         | 路径                                     | 说明                      |
   |:---|:---|:---|
   | DmsConsumer.java            | .\\src\\main\\java\\com\\dms\\consumer | 消费消息的API。               |
   | DmsProducer.java            | .\\src\\main\\java\\com\\dms\\producer | 生产消息的API。               |
   | dms.sdk.consumer.properties | .\\src\\main\\resources                | 消费消息的配置信息。              |
   | dms.sdk.producer.properties | .\\src\\main\\resources                | 生产消息的配置信息。              |
   | client.jks                  | .\\src\\main\\resources                | SSL证书，用于SASL_SSL方式连接。   |
   | DmsConsumerTest.java        | .\\src\\test\\java\\com\\dms\\consumer | 消费消息的测试代码。              |
   | DmsProducerTest.java        | .\\src\\test\\java\\com\\dms\\producer | 生产消息的测试代码。              |
   | pom.xml                     | .\\                                    | maven配置文件，包含Kafka客户端引用。 |
      
   
   
2. 打开IntelliJ IDEA，导入Demo。 
   Demo是一个Maven构建的Java工程，因此需要配置JDK环境，以及IDEA的Maven插件。
   图1选择"导入工程"   
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660980.png "点击放大")
   图2选择"Maven"   
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660966.png "点击放大")
   图3选择Java环境   
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660975.png "点击放大")
   其他选项可默认或自主选择。然后单击Finish，完成Demo导入。
   导入后Demo工程如下：
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660939.png "点击放大")
   
   
3. 配置Maven路径。 
   打开"File \> Settings"，找到"Maven home directory"信息项，选择正确的Maven路径，以及Maven所需的settings.xml文件。
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660970.png "点击放大")
   
   
4. 修改Kafka配置信息。 
   以生产消息为例，具体修改请参考[生产消息配置文件](https://support.huaweicloud.com/devg-kafka/Kafka-java-demo.html#Kafka-java-demo__li106711612652)。
   
   
5. 在IDEA工具的左下角，打开Terminal窗口，执行**mvn test** 命令体验demo。
   
   图4IDEA的Terminal窗口位置   
   ![](https://support.huaweicloud.com/devg-kafka/zh-cn_image_0171660984.png "点击放大")
   生产消息会得到以下回显信息：
   ```
   -------------------------------------------------------
    T E S T S
   -------------------------------------------------------
   Running com.dms.producer.DmsProducerTest
   produce msg:The msg is 0
   produce msg:The msg is 1
   produce msg:The msg is 2
   produce msg:The msg is 3
   produce msg:The msg is 4
   produce msg:The msg is 5
   produce msg:The msg is 6
   produce msg:The msg is 7
   produce msg:The msg is 8
   produce msg:The msg is 9
   Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 138.877 sec
   ```
   消费消息会得到以下回显信息：
   ```
   -------------------------------------------------------
    T E S T S
   -------------------------------------------------------
   Running com.dms.consumer.DmsConsumerTest
   the numbers of topic:0
   the numbers of topic:0
   the numbers of topic:6
   ConsumerRecord(topic = topic-0, partition = 2, offset = 0, CreateTime = 1557059377179, serialized key size = -1, serialized value size = 12, headers = RecordHeaders(headers = [], isReadOnly = false), key = null, value = The msg is 2)
   ConsumerRecord(topic = topic-0, partition = 2, offset = 1, CreateTime = 1557059377195, serialized key size = -1, serialized value size = 12, headers = RecordHeaders(headers = [], isReadOnly = false), key = null, value = The msg is 5)
   ```
   
   
 
