【发布时间】:2013-09-14 22:52:23
【问题描述】:
我有一些看起来像这样的 XML(粘贴新的 Maven 依赖项后):
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.6.0.Final</version>
</dependency>
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.11</version>
</dependency>
当我选择文本并选择 Source → Format(默认为 Ctrl+Shift+F)时,我希望它最终看起来像这样:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.6.0.Final</version>
</dependency>
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.11</version>
</dependency>
但是,它看起来像这样:
</dependency><dependency>
<groupId>
org.hibernate
</groupId>
<artifactId>
hibernate-entitymanager
</artifactId>
<version>
3.6.0.Final
</version>
</dependency>
<dependency>
<groupId>
net.sourceforge.jtds
</groupId>
<artifactId>
jtds
</artifactId>
<version>
1.3.0
</version>
糟糕!
如果我不选择任何文本并尝试格式化整个文件,它会做同样的事情:在所有文本(字符数据)之前放置换行符。
我玩过 Window → Preferences → XML → XML Files → Editor → Formatting 中的设置,但似乎没有一个能解决这个问题。肯定没有勾选“在文本前插入烦人的换行符”复选框!
关于如何解决这个问题的任何想法? FWIW,格式化 Java 代码效果很好。
帮助 → 关于 Eclipse:
Eclipse Java EE IDE for Web Developers.
Version: Indigo Service Release 2
Build id: 20120216-1857
我正在从 Cygwin 中启动 Eclipse for Windows,但没有注意到任何其他与 CR/LF 相关的问题。尽管如此,我还是尝试将文件从 unix 样式换行转换为 DOS 样式的换行符,但这并没有什么不同。
【问题讨论】:
-
这可能有助于确定您使用哪个编辑器进行格式化。检查文件的“打开方式”上下文菜单以查看您使用的是哪个。
-
这引导我朝着正确的方向前进!上下文菜单没有具体告诉我我使用的是哪个编辑器,但我意识到我已经习惯了点击 Android 编辑器的专用选项卡,以至于我什至没有想到它。如果您发布“检查您是否真的在使用 XML 编辑器”作为答案,我会给予它应得的荣誉。干杯!
标签: xml eclipse code-formatting