Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将Eclipse格式化程序配置为不在字段声明之间插入空行?_Eclipse_Configuration_Formatting - Fatal编程技术网

如何将Eclipse格式化程序配置为不在字段声明之间插入空行?

如何将Eclipse格式化程序配置为不在字段声明之间插入空行?,eclipse,configuration,formatting,Eclipse,Configuration,Formatting,我使用的是Eclipse3.5.1(Galileo),其中一个自动格式化设置有问题 当我自动格式化时,在每个字段声明和每个字段声明之间插入一个空行。我正在寻找的行为是组织字段声明,而在声明之间没有空白行。除了在声明之间已经有一个或多个空行的情况之外,在这种情况下,我希望格式化程序尊重空格,并将>=1行减少为1行 我知道这在Eclipse中是可能的(不记得版本,但我使用了一个设置),但我似乎无法在Window->Preferences->Java->code Style->Formatter中找到

我使用的是Eclipse3.5.1(Galileo),其中一个自动格式化设置有问题

当我自动格式化时,在每个字段声明和每个字段声明之间插入一个空行。我正在寻找的行为是组织字段声明,而在声明之间没有空白行。除了在声明之间已经有一个或多个空行的情况之外,在这种情况下,我希望格式化程序尊重空格,并将>=1行减少为1行

我知道这在Eclipse中是可能的(不记得版本,但我使用了一个设置),但我似乎无法在
Window->Preferences->Java->code Style->Formatter
中找到正确的设置

我应该配置哪个设置来启用此行为



编辑:我所描述的行为似乎是默认行为,出于某种原因,我无法找到一种方法,在不删除
.settings
目录的情况下返回到默认行为。它也无法复制,这表明它的项目设置有点奇怪(它是从一个开源项目签出的)。尽管我已经找到了一种黑客方法来解决这个问题,但我仍然在寻找建议,并能够验证和接受答案。

奇怪的是,我无法用自己的格式化程序配置文件(eclipse3.5.1)重现这种行为

在2003年()有一个设置为“如果行太长,则在每个参数后插入新行”,但这在很久以前就集成到了“换行”面板中

是否确实由于换行问题(由于最大行长度太短)而未添加换行符

“空行”选项卡有一个“现有空行”部分,其中有一个“要保留的空行数”字段,该字段可以设置为1,并应满足您的后续需求。
<强>在相同的选项卡“空行”中,也检查“字段前声明”的值:“1”可以解释您看到的>/P>的空行。
(来源:)


格式化程序选项位于org.eclipse.jdt.ui.prefs文件中,即:

  • 在您的工作区中(.metadata.plugins\org.eclipse.core.runtime.settings)
  • 或者在项目的
    .settings
您可以尝试清空该文件以检查问题是否仍然存在。如果要解决问题,请尝试在该文件中添加一些行,直到问题再次出现

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 2020年1月17日 在第一个字段声明之后删除空白行。
我找到了解决问题的糟糕办法

我转到该项目,删除了
.settings
目录并重新启动了Eclipse。当然,在这个过程中,我丢失了所有其他格式规则,这就是为什么它很糟糕。但是空白行不再被添加,并且我所描述的行为是默认行为(可能是为什么我习惯了)。 我仍然希望接受更好的解决方案,我保留了旧的设置以验证任何建议


编辑:我想我找到问题了

出于某种原因,可能与正在签出的项目设置有关,我通过首选项选择的任何设置实际上都没有得到尊重。因此,尽管作者建议的偏好是正确的,但改变它们并没有效果。我在尝试更改自动生成的注释时遇到了同样的问题,但没有将二和二放在一起(实际上提醒我这一点的是,最终看到在一条注释中生成了“ARGH”,我似乎无法删除:-p)

因此,在本例中,问题实际上不是设置,而是Eclipse中我甚至不想调查的其他内容。

我使用的Eclipse是:

Eclipse Java EE IDE for Web Developers.
Version: Indigo Service Release 2
Build id: 20120216-1857

正如上面的图片所示,在空白行选项卡下面有一个“导入组”,它对我起作用。您可以查看。

谢谢您的回答。我很确定这不是换行,我会错误地把它改成非常小的东西,比如
inta;int b在它们之间获得一条新线。奇怪的是,在我的空白行选项卡中,这个示例实际上是我想要的,没有额外的行,但是格式化仍然插入了一个额外的行。我还有其他工作区使用相同的Eclipse,所以我将检查它们的设置,看看有什么不同。干杯。为了澄清,当我说“
inta;intb;
在它们之间换行”时,我的意思是a和b已经在单独的行中,并且插入了一个额外的空行。@Grundlefeck:明白。那么,这是相当神秘的。可能是与已安装插件的交互?在新安装的Eclipse(导出/重新导入您的设置)上,您是否观察到同样的情况?无论如何,如果你找到了答案,我很感兴趣;)+1.你能一节一节地复制回你的格式化设置文件吗(每次添加之间都有一个重新启动),看看这些格式化部分对这个“空行”问题是否有任何影响?请看我的编辑,我认为这实际上无助于解决根本问题。谢谢VonC。我刚刚在回答中添加了带有格式选项的精确设置文件。这是我要记住的,因为你在编辑中说你不能很容易地复制这个问题,但是它仍然是值得一试的空洞/填满这个设置文件以防万一。在空白声明之前的实际设置是“代码>:字段1:/<代码>,就像你的答案一样。但是
diff
3.5.1在处理两个不同的prefs文件时,处理这些值的方式与最初使用Eclipse签入它们的版本不同。我认为这是不同的日食不能很好地处理一般的环境,而不是特定的环境。正如您所说,“在字段声明之前”是一个。请指定settin的路径