Eclipse:启用断言


96

我正在运行Eclipse Galileo。如何在Eclipse中启用断言?

正如其他网站所建议的那样,我尝试添加以下参数:-ea。我还尝试将编译器的遵从性级别更改为1.4。这些建议均无效。

Answers:


163
  1. 转到菜单 Run,然后转到菜单项 Run Configurations

在此处输入图片说明

  1. 左面板中,转到Java Application,然后转到Assertions

  2. 右侧面板中,选择选项卡 Arguments

  3. 在的字段VM arguments,键入-ea以启用断言。

在此处输入图片说明

  1. 点击Apply,然后Run 点击按钮

要将其全局设置为所有设置的默认值

  1. 转到菜单Window(如果在Windows上),或转到菜单Eclipse(如果在Mac上)。对于Linux,可能有点类似。

  2. 转到Preferences

  3. 选择Java,然后Installed JREs左侧面板中选择

  4. 选择您的JRE,然后单击右侧面板中Edit...按钮。

  5. Default VM arguments字段中,添加-ea


这不适用于Android,您显然需要JUnit声明。
本体

42
要将其全局设置为所有内容的默认设置,请转到窗口->首选项-> Java /已安装的JRE。选择JRE,然后单击“编辑...”。在“默认VM参数”字段中,添加“ -ea”。
Silveri

@nbro我下没有Assertions物品Java Application。也许您是说当前的运行配置?
John McClane

@JohnMcClane不同版本的Eclipse可能具有不同的面板,按钮和菜单。如果我特别添加了该指令(但是很久以前),则可能是在我自己的版本上尝试过的(因为您也可以从图片中注意到,我使用的是Mac,所以有可能Eclipse版本在其他系统上稍有不同)。
nbro

1
@JohnMcClane是的,我认为您是对的。这些可能是项目名称。而不是转到“ Assertions”,您应该转到项目名称(我想)。
nbro

36

如果你想在全球范围内解决这个问题,所有的JUnit测试,然后去Preferences > Java > JUnit和顶部单击“复选框‘EA’添加到VM参数创造新的JUnit启动配置时, ”现在Eclipse将不会打扰你每一个新的测试你想跑。对于现有测试,您必须在中删除其运行配置Run Configuration > JUnit


5
是否可以将-ea添加到所有现有的 JUnit启动配置中?
mxro 2012年

要将-ea添加到现有测试中,您必须在运行配置> JUnit
Honza中

11

要针对所有Java运行全局执行此操作,请编辑Installed JREs属性。

例如:Windows-> Preferences->高亮显示默认JRE->单击Edit ...->在Default VM arguments输入框中,输入-ea->单击Finish按钮。

这适用于Eclipse Kepler SR2。


5

Maven项目中,可以通过以下方式运行具有自动魔术类路径的main方法

bash> export MAVEN_OPTS="-ea" && mvn exec:java -Dexec.mainClass="com.your.class.with.main"
cmd> set MAVEN_OPTS="-ea" && mvn exec:java -Dexec.mainClass="com.your.class.with.main"

在linux / eclipse中,您可以使用bash添加终端窗口,以更加方便地使用。


4

您要为从Eclipse运行的应用程序启用断言吗?我通常只是将-ea添加到“运行方式”配置文件中的命令行参数中。


1
是的,这也是我从命令行运行时通常也这样做的原因,这就是为什么我认为在首选项中添加这些VM参数会起作用的原因。感谢您的输入。在确认我并不认为应该这样做..
实际上,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.