Eclipse格式化程序允许对齐=';s和Javadoc选项卡

Eclipse格式化程序允许对齐=';s和Javadoc选项卡,java,eclipse,formatter,Java,Eclipse,Formatter,我正在使用Eclipse格式化程序,我需要以下代码格式化。注意JavaDoc和=是如何对齐的 我想要的是: /** * Description. * * @param alpha this is what alpha does * @param beta this is what beta does * @param gamma this is what gamma does * @param delta this is what delta does */ public Foo

我正在使用Eclipse格式化程序,我需要以下代码格式化。注意JavaDoc和
=
是如何对齐的

我想要的是:

/**
 * Description.
 *
 * @param alpha this is what alpha does
 * @param beta  this is what beta does
 * @param gamma this is what gamma does
 * @param delta this is what delta does
 */
public Foo(Bar alpha, Bar beta, Bar gamma, Bar delta) {
    this.alpha = alpha;
    this.beta  = beta;
    this.gamma = gamma;
    this.delta = delta;
}
eclipse格式:

/**
 *
 * @param alpha this is what alpha does
 * @param beta this is what beta does
 * @param gamma this is what gamma does
 * @param delta this is what delta does
 */
public Foo(Bar alpha, Bar beta, Bar gamma, Bar delta) {
    this.alpha = alpha;
    this.beta = beta;
    this.gamma = gamma;
    this.delta = delta;
}
有人知道这是否可能吗


如果无法自动执行此操作,是否可以让格式化程序忽略这些行上的空白?

看起来太具体,无法使用内置解决方案。可能会有一个插件来帮助实现这一点

如果无法自动执行此操作,是否可以让格式化程序忽略这些行上的空白

是,使用
@formatter
标记

  • 转到
    Windows>首选项
  • 从那里
    Java>code-Style>Formatter>Edit
  • 选择
    打开/关闭标签
    选项卡并选中
    启用
    复选框
  • 将它们应用于您的代码:

    //@formatter:off
    /**
    * Description.
    *
    * @param alpha this is what alpha does
    * @param beta  this is what beta does
    * @param gamma this is what gamma does
    * @param delta this is what delta does
    */
    //@formatter:on
    public Foo(Bar alpha, Bar beta, Bar gamma, Bar delta) {
        this.alpha = alpha;
        this.beta  = beta;
        this.gamma = gamma;
        this.delta = delta;
    }
    
  • 或者,如果要禁用所有Javadoc格式,请执行以下操作:

  • 选择
    Comments
    标记并取消选中
    enableJavadoccommentformatting
    复选框
  • 以下内容不是您想要的,因为它添加了新行,但可能对您来说已经足够近了,因为它将参数描述彼此对齐:

    /**
     * Description.
     *
     * @param alpha
     *            this is what alpha does
     * @param beta
     *            this is what beta does
     * @param gamma
     *            this is what gamma does
     * @param delta
     *            this is what delta does
     */
    
    这是通过以下方式实现的:

  • 选择
    注释
    标记并选中
    缩进Javadoc标记
    ,(可选)
    在@param
    后缩进描述和@param标记后的
    新行复选框
  • 您可以使用可用于最常见IDE的插件: Eclipse、Netbeans、JDeveloper、IntelliJ IDEA、JBuilder

    这将保留代码的格式

    /**
     * Description.
     *
     * @param alpha this is what alpha does
     * @param beta  this is what beta does
     * @param gamma this is what gamma does
     * @param delta this is what delta does
     */
    public Foo(Bar alpha, Bar beta, Bar gamma, Bar delta) {
        this.alpha = alpha;
        this.beta  = beta;
        this.gamma = gamma;
        this.delta = delta;
    }
    
    //~ Formatted by Jindent --- http://www.jindent.com
    
    与Eclipse的默认格式化命令Ctrl+Shift+F不同,您需要使用
    按住Ctrl+Shift+J组合键,使用
    Jindent
    格式化代码

    它只在代码末尾添加一条注释,您必须手动删除该注释


    更新:要安装它,只需将图标拖到Eclipse窗口上即可

    这没关系,但是你有一个插件的例子可以处理这个问题吗?@screenmutt没有,我自己从来都不需要。