【问题标题】:How import eclipse code style to intellij idea?如何将eclipse代码风格导入intellij idea?
【发布时间】:2015-01-18 02:01:43
【问题描述】:

我有 org.eclipse.jdt.core.prefs 文件,其中包含 eclipse 代码样式,但我只能导入到 intellij idea 的 xml 文件,有什么方法可以将 prefs 文件导入到 intellij idea 中?

【问题讨论】:

标签: eclipse intellij-idea preferences


【解决方案1】:

转到 Eclipse 的 Preferences → Java → Code Style → Formatter 并通过 Export All 按钮将设置导出到 XML 文件(或在打开的对话框中编辑然后导出)。然后打开 IntelliJ IDEA 设置 → 代码样式 → Java,单击管理,然后只需单击导入即可导入该 XML 文件。

从 IntelliJ IDEA 13 开始,无法直接导入 .settings/.prefs 文件。


编辑: IntelliJ 可以导入以下 Eclipse 属性:

  • 一般
    • 右边距,格式化程序开/关标签
    • 缩进
    • 缩进大小
    • “制表符”字符的使用
    • 制表符仅用于前导缩进(智能制表符)
    • 从“switch”缩进“case”分支
    • 缩进类成员
    • 在第一列保留评论
  • 空格 (Java)
    • 逗号之前/之后(为 Eclipse 方法声明参数设置)
    • 类型参数中的逗号后
    • 在数组初始化大括号内
    • 在括号内(在数组引用中)
    • 在括号内:注解、“for”、“if”、“catch”、“while”、“switch”、方法、空方法、带括号的表达式、方法调用、类型转换、“同步”
    • 在括号之前:“try”、“for”、“while”、“switch”、方法、“if”、“catch”、方法、方法调用、“同步”。
    • 类型转换后
    • 围绕一元赋值运算符(如果它在 Eclipse 中设置为“之前”和“之后”)。
    • 在打开大括号之前:数组初始值设定项,'switch'
    • 在条件表达式中的“?”之前
    • 条件表达式中“:”前后的空格
    • 二元运算符周围的空格(单个 Eclipse 设置映射到多个 IntelliJ IDEA 的设置)
  • 空白行
    • 围绕字段和方法
    • 打包前/打包后
    • 导入之前/之后
    • 在方法体之前
    • 在代码中保留空行(要保留的空行数)
  • 包装
    • 之前的新行:数组初始值设定项中的右大括号、“if”语句中的“else”、“try”语句中的“finally”和“catch”、二元运算符(如果已包装)
    • 后新行:数组初始化器中的左大括号 特殊的“else if”处理(紧凑的“else if”)
    • 将简单的块放在一行中
    • 将控制语句保持在一行中
    • 对齐方式:数组初始化表达式、方法声明和调用中的参数、字段声明、扩展列表、赋值、二进制表达式、“throw”子句、“try”中的资源。
    • 大括号样式:代码块、方法和类
  • JavaDoc
    • 启用 JavaDoc 格式
    • JavaDoc 中的空白行

【讨论】:

  • 我没有使用这些设置的 eclipse 项目,如果我尝试通过 eclipse 打开这个项目,他们没有配置它。我也无法将 .prefs 文件导入 Eclipse。
  • 要在 Eclipse 中导入设置,请选择文件 → 导入。在导入向导中,选择常规 → 首选项,然后单击下一步。单击浏览... 并找到您要导入的文件。单击全部导入以接受文件中定义的所有首选项。如果您只想导入几个首选项,请从列表中选择它们。最后,点击完成。
  • 我将设置导入到 eclipse 并且它们在那里工作,但是当我将它们导出到 xml 文件时,它几乎是空的并且不包含规则:“"
  • JetBrains 网站声明:请记住,IntelliJ IDEA 和 Eclipse 中的代码样式设置根本不同,不能完全准确地相互映射。 I更新了我的答案并添加了有关 IntelliJ IDEA 13 支持哪些 Eclipse 属性的信息。
  • 我没有点击全部导出,而是点击编辑关闭并点击导出,导出正确的文件,请添加到您的答案中。
【解决方案2】:

试试Eclipse Code Formatter 插件。它易于配置且运行良好。

【讨论】:

  • 这涵盖了本地 intelliJ 格式化程序在导入 eclipse 格式 xml 文件时没有的许多设置。这是我使代码与我们的 Eclipse 开发人员保持一致的唯一方法。
【解决方案3】:

在最新(2020)IntelliJ IDEA中,如果你安装了“Eclipse interoperability”插件,那么简单如下:

Settings > Editor > Code Style > Java > ⚙️ > Import Scheme > Eclipse XML Profile

【讨论】:

  • 如果我有两种不同的 Java 和 JS 格式化程序怎么办?
  • @RishabhDeepSingh 我认为 JS 的东西在 IntelliJ 的付费版本上;顺便说一句,我将 VSCode 用于我的 IntelliJ 多模块项目的前端模块
  • 我使用的是 IntelliJ 2020.1,但我不认为这是一个选项。也许您安装了一个插件来增加对 Eclipse 的支持? share.getcloudapp.com/d5uv1k4d
  • @Dónal 它在 2020.1 中开箱即用(就像图片中的 2019.3 一样),但我在 Linux 上。我不确定 Mac 版本是否缺少此选项。不过很奇怪。在已安装的插件中​​,我可以看到一个名为Eclipse Interoperability 的捆绑插件(开箱即用,不是我安装的),它可能负责这类事情。您的 Mac 版本的 Intellij 是否安装了它?如果没有,您可以从 Marketplace 安装它吗?
  • @AndreaLigios 我安装了“Eclipse 互操作性”插件,现在出现了该选项。感谢您的建议
猜你喜欢
  • 2016-07-25
  • 2015-12-14
  • 2015-05-27
  • 1970-01-01
  • 2016-04-29
  • 2014-01-22
  • 1970-01-01
  • 2020-03-01
  • 2015-12-02
相关资源
最近更新 更多