Eclipse Java格式化程序可以独立使用吗
有没有办法在 Eclipse 之外使用 Eclipse 附带的格式化程序? 我想使用我使用 eclipse 配置的 formatter.xml 文件来格式化一些 java 文件。 有人有任何代码示例可以让我做到这一点吗? 我也想独立使用这个,所以使用的特定罐子会很好。
Is there a way to use the formatter that comes with eclipse, outside of eclipse? I would like to format some java files using my formatter.xml file that I have configured using eclipse. Does anyone have any code examples that would allow me to do this? I would also like to use this standalone, so the specific jars that are used would be nice.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
显然你可以 直接调用来自命令行的 Eclipse 代码格式化程序。
Apparently you can directly invoke Eclipse's code formatter from the command line.
这是 官方 Eclipse 文档 关于如何执行此操作
转储这些文档:
运行格式化程序应用程序就像从命令行运行 org.eclipse.jdt.core.JavaCodeFormatter 应用程序一样简单:
在 MacOS 上调用时,指向配置文件或源文件可以是相对的,但它们将从 eclipse.ini 文件的位置计算。 这是 MacOS 上 Eclipse 启动器的限制。 在所有其他平台上,相对路径是相对于当前用户目录计算的。
要格式化的 Java 源文件和/或目录。 只有以 .java 结尾的文件才会在给定目录中进行格式化。
-config
使用指定属性文件中的格式样式。 有关详细信息,请参阅生成格式化程序应用程序的配置文件。
-help
显示帮助消息。
-quiet
只打印错误消息。
-verbose
对格式化作业进行详细说明。
Here's the offical eclipse docs on how to do this
Dump of those docs:
Running the formatter application is as simple as running the org.eclipse.jdt.core.JavaCodeFormatter application from the commandline:
When invoked on MacOS, the paths to point to the configuration file or the source files can be relative, but they will be computed from the location of the eclipse.ini file. This is a limitation of the Eclipse launcher on MacOS. On all other platforms, the relative paths are computed relative to the current user directory.
Java source files and/or directories to format. Only files ending with .java will be formatted in the given directory.
-config
Use the formatting style from the specified properties file. Refer to Generating a config file for the formatter application for details.
-help
Display the help message.
-quiet
Only print error messages.
-verbose
Be verbose about the formatting job.
从来没有尝试过类似的事情,但我记得曾经看到过一个名为:
org.eclipse.jdt.core.formatter.CodeFormatterApplication
的类,也许这是格式化机制的一些独立入口点,尽管我从未尝试或进一步研究过。
Never tried to pull something like that off, but I remember seeing once a class called:
org.eclipse.jdt.core.formatter.CodeFormatterApplication
Perhaps that is some standalone entry point into the formatting mechanism, though I've never tried or investigated further.