【发布时间】:2011-07-27 09:58:46
【问题描述】:
我正在运行 Eclipse Galileo。如何在 Eclipse 中启用断言?
根据其他网站的建议,我尝试添加参数:-ea。我还尝试将编译器合规级别更改为1.4。这些建议都没有奏效。
【问题讨论】:
标签: java eclipse compiler-construction assertions
我正在运行 Eclipse Galileo。如何在 Eclipse 中启用断言?
根据其他网站的建议,我尝试添加参数:-ea。我还尝试将编译器合规级别更改为1.4。这些建议都没有奏效。
【问题讨论】:
标签: java eclipse compiler-construction assertions
Run,然后转到菜单项Run Configurations。在左侧面板中,转到Java Application,然后转到Assertions。
在右侧面板中,选择标签Arguments。
在VM arguments 的字段 下,键入-ea 以启用断言。
Apply,然后点击Run按钮。将其全局设置为所有内容的默认值:
转至菜单 Window(如果您在 Windows 上),或转至菜单 Eclipse(如果您在 Mac 上)。对于 Linux,它可能是类似的。
转到Preferences。
从左侧面板中选择Java,然后选择Installed JREs。
选择您的JRE,然后单击右侧面板中的Edit... 按钮。
在Default VM arguments 字段中,添加-ea。
【讨论】:
Java Application 下没有Assertions 项目。也许您的意思是当前运行配置?
您想为从 Eclipse 运行的应用程序启用断言?我通常只是将 -ea 添加到“运行方式”配置文件中的命令行参数中。
【讨论】:
如果您想为所有 JUnit 测试全局解决此问题,请转到 Preferences > Java > JUnit 并单击顶部的复选框“在创建新的 JUnit 启动配置时将 'ea' 添加到 VM 参数 " 现在 Eclipse 不会为您想要运行的每个 新测试 出问题。对于现有测试,您必须在 Run Configuration > JUnit 中删除它们的运行配置。
【讨论】:
在 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 添加终端窗口,使用起来更方便。
【讨论】:
要对所有 Java 运行全局执行此操作,请编辑 Installed JREs 属性。
例如:Windows -> Preferences -> 高亮默认JRE -> 点击Edit... -> 在Default VM arguments 输入框中输入-ea -> 点击finish按钮。
这适用于 Eclipse Kepler SR2。
【讨论】: