eclipse不会返回errorlevel

时间:2012-08-13 01:33:22

标签: eclipse eclipse-plugin batch-file p2

我正在编写一个批处理文件,以便从本地存储库中安装eclipse上的功能。

eclipse.exe -application org.eclipse.equinox.p2.director
  -repository C:/repo,http://download.eclipse.org/releases/indigo/
  -installIU com.app.feature.feature.group

但我无法检测操作是否失败或是否从批处理脚本成功。看来eclipse没有设置错误级别?任何可能的解决方法?

2 个答案:

答案 0 :(得分:1)

我找到的一个解决方法是通过ant exec运行命令,而不是直接从批处理文件调用。它报告所有错误。

<exec executable="eclipse.exe" failonerror="true">
  <arg value="-noSplash"/>
  <arg value="-application"/>
  <arg value="org.eclipse.equinox.p2.director"/>
  <arg value="-repository"/>
  <arg value="file:C:/repo,http://download.eclipse.org/releases/indigo/"/>
  <arg value="-installIU"/>
  <arg value="com.app.feature.feature.group"/>
</exec>

答案 1 :(得分:0)

Equinox 3.6.0中有一个bug(已在3.6.1中修复)导致失败的应用程序返回退出代码0.除非您使用的是Equinox版本,否则p2 director应用程序有一个正确的退出代码。

我认为问题在于您如何检查批处理脚本中的退出代码。您可以使用IF ERRORLEVEL 1 GOTO LabelOfErrorHandling检查非零退出代码。