我发现Java应用程序中存在一个错误,只有当我从系统命令行运行应用程序时才会发生错误,但是当我从Eclipse Mars中运行应用程序时却没有。我希望了解这些启动应用程序的方法之间的技术差异将帮助我找到错误。
所以我的问题是:Eclipse在启动应用程序时是否有任何特殊的事情,例如:设置其他VM参数?当我从命令行启动应用程序时,我可以以某种方式重现Eclipse运行应用程序的方式吗?
修改
我遇到了编码问题,即在Eclipse中运行应用程序时正确显示了一些非ASCII字符,但是从命令行运行时却没有。我发现代码依赖于默认的系统字符集UTF-8,这显然是不正确的(我使用Latin1运行Windows)。但是,在同一台计算机上从Eclipse运行时,Java的默认字符集设置为UTF-8。出于这个原因,我无法重现IDE中的错误。我终于从shell运行程序并使用远程调试来查找错误。
答案 0 :(得分:1)
在命令行w.r.t中运行程序之间存在巨大差异。在IDE中运行它。(但请记住,您可以在命令行中实现IDE的所有功能) 对于Eclipse,您可以阅读http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2FgettingStarted%2Fqs-12.htm中提供的主题。