

# 将Flink导入IDE

> 译者：[flink.sojb.cn](https://flink.sojb.cn/)


以下部分描述了如何将Flink项目导入IDE以开发Flink本身。有关编写Flink程序的信息，请参阅[Java API](https://flink.sojb.cn/dev/projectsetup/java_api_quickstart.html) 和[Scala API](https://flink.sojb.cn/dev/projectsetup/scala_api_quickstart.html) 快速入门指南。

**注意：**每当IDE中的某些内容无效时，请首先尝试使用Maven命令行，`mvn clean package -DskipTests`因为它可能是您的IDE有错误或未正确设置。

## 制备

首先，请先从我们的某个[存储库中](https://flink.apache.org/community.html#source-code)查看Flink源代码 ，例如：



```
git clone https://github.com/apache/flink.git
```



## IntelliJ IDEA

关于如何设置IntelliJ IDEA IDE以开发Flink核心的简要指南。由于已知Eclipse存在混合Scala和Java项目的问题，因此越来越多的贡献者正在迁移到IntelliJ IDEA。

以下文档描述了使用Flink源设置IntelliJ IDEA 2016.2.5（[https://www.jetbrains.com/idea/download/](https://www.jetbrains.com/idea/download/)）的步骤。

### 安装Scala插件

IntelliJ安装设置提供安装Scala插件。如果未安装，请在导入Flink之前按照这些说明启用对Scala项目和文件的支持：

1.  转到IntelliJ插件设置（IntelliJ IDEA - &gt;首选项 - &gt;插件），然后单击“安装Jetbrains插件...”。
2.  选择并安装“Scala”插件。
3.  重启IntelliJ

### 导入Flink

1.  启动IntelliJ IDEA并选择“导入项目”
2.  选择Flink存储库的根文件夹
3.  选择“从外部模型导入项目”并选择“Maven”
4.  保存默认选项并单击“下一步”，直到您点击SDK部分。
5.  如果没有SDK，请创建一个左上角带有“+”符号的SDK，然后单击“JDK”，选择您的JDK主目录并单击“确定”。否则只需选择您的SDK。
6.  继续再次单击“下一步”并完成导入。
7.  右键单击导入的Flink项目 - &gt; Maven - &gt;生成源和更新文件夹。请注意，这将在您的本地Maven存储库中安装Flink库，即“/ home / _-your-user-_ /.m2/repository/org/apache/flink/”。或者，`mvn clean package -DskipTests`还可以为IDE创建必要的文件，但不安装库。
8.  构建项目（构建 - &gt;制作项目）

### Checkstyle For Java

IntelliJ使用Checkstyle-IDEA插件支持IDE中的checkstyle。

1.  从IntelliJ插件存储库安装“Checkstyle-IDEA”插件。
2.  通过转到设置 - &gt;其他设置 - &gt; Checkstyle来配置插件。
3.  将“扫描范围”设置为“仅Java源（包括测试）”。
4.  在“Checkstyle Version”下拉列表中选择_8.9_，然后单击“应用”。**这一步很重要，不要跳过它！**
5.  在“配置文件”窗格中，使用加号图标添加新配置：
    1.  将“描述”设置为“Flink”。
    2.  选择“使用本地Checkstyle文件”，并将其指向 `"tools/maven/checkstyle.xml"`存储库中。
    3.  选中“相对于项目位置存储”框，然后单击“下一步”。
    4.  将“checkstyle.suppressions.file”属性值配置为 `"suppressions.xml"`，然后单击“下一步”，然后单击“完成”。
6.  选择“Flink”作为唯一的活动配置文件，然后单击“应用”和“确定”。
7.  Checkstyle现在会在编辑器中针对任何Checkstyle违规行为发出警告。

安装插件后，您可以`"tools/maven/checkstyle.xml"`通过转到Scheme下拉框旁边的设置 - &gt;编辑器 - &gt;代码样式 - &gt; Java - &gt;齿轮图标直接导入。例如，这将自动调整导入布局。

您可以通过打开Checkstyle工具窗口并单击“检查模块”按钮来扫描整个模块。扫描应报告没有错误。

注意一些模块没有完全被CheckStyle的，其中包括覆盖`flink-core`，`flink-optimizer`和`flink-runtime`。不过请确保您在这些模块中添加/修改的代码仍符合checkstyle规则。

### Scala的Checkstyle

通过选择“设置” - &gt;“编辑器” - &gt;“检查”，然后搜索“Scala样式检查”，在Intellij中启用scalastyle。也`"tools/maven/scalastyle_config.xml"`放在`"&lt;root&gt;/.idea"`或`"&lt;root&gt;/project"`目录中。

## Eclipse

**注意：**根据我们的经验，由于Scala IDE 3.0.3捆绑的旧Eclipse版本的不足或者与Scala IDE 4.4.1中捆绑的Scala版本的版本不兼容，此设置不适用于Flink。

**我们建议改用IntelliJ（见[上文](#intellij-idea)）**

