求救:eclipse编译老有出错提示但是还能运行

在eclipse中编译程序时老出现ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2JDWP exit error AGENT_ERROR_NO_JNI_ENV(183): [../../../src/share/back/util.c:820]这样的错误,但是不影响运行,不知道这是为什么?

装jdk1.6了把,呵呵~ 我也碰到过这问题。
这是我以前在网上找到的,希望对你有帮助。
ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2
JDWP exit error AGENT_ERROR_NO_JNI_ENV(183): [../../../src/share/back/util.c:820]

这是怎么回事呢?现在的Java SE 6已经到了RC的阶段了啊?这样的错误SUN不会有吧~~

经过我仔细的查阅Java Doc,发现其中有这么一段话:

http://download.java.net/jdk6/docs/api/java/io/Console.html

"Whether a virtual machine has a console is dependent upon the underlying platform and also upon the manner in which the virtual machine is invoked. If the virtual machine is started from an interactive command line without redirecting the standard input and output streams then its console will exist and will typically be connected to the keyboard and display from which the virtual machine was launched. If the virtual machine is started automatically, for example by a background job scheduler, then it will typically not have a console." ">http://download.java.net/jdk6/docs/api/java/io/Con..."

翻译一下:

虚拟机是否有一个控制台Console取决于所依赖的平台和虚拟机解析该方法的方式。如果虚拟机是从一个交互式的命令行中启动的,而没有重定向标准输入和输出流,那么虚拟机会自动的连接到键盘作为标准输入,并且把启动虚拟机的地方作为标准输出。如果虚拟机是自动启动的,例如通过后台的一个任务计划,那么典型的情况就是没有Console控制台……。

于是,思考一下我们运行上面程序的地点——Eclipse等集成开发环境,这对于上面描述中的把启动虚拟机的地方作为标准输出来说是不合适的,这里的Console()返回的默认情况下是Null,于是就产生了上面的出错信息。(也许未来Eclipse会有所改进吧)

怎么解决该问题呢?这里提供两条思路给大家(已经实际操作过,可以实现功能的正常运作)

1、使用命令行进行运行,编译可以使用集成开发环境。这样可以完成标准输出。
2、在程序中重定向标准输出到其他的设备或者方式(例如写到文本文件),这样也可以“比较不方便的”完成该功能。

总结:
重申!!文档很重要,特别是官方文档和一些说明书性质的文献资料。预期看什么XX天精通YY技术,还不如首先把官方的文档通读一遍。推荐Java Doc和MSDN Library。
温馨提示:内容为网友见解,仅供参考
无其他回答

求救:eclipse编译老有出错提示但是还能运行
如果虚拟机是自动启动的,例如通过后台的一个任务计划,那么典型的情况就是没有Console控制台……。于是,思考一下我们运行上面程序的地点——Eclipse等集成开发环境,这对于上面描述中的把启动虚拟机的地方作为标准输出来说是不合适的,这里的Console()返回的默认情况下是Null,于是就产生了上面的出错信息。

我今天在eclipse上编写了一个java聊天程序的客户端,但是老是出现编译错...
原因是使用了 content assist 功能,eclipse会去查找java的源代码,首先在本地找,然后到internet上找。本地默认是没有java的源代码。computing additional info表示在搜索internet上的java的源代码 解决办法:1. 找到JDK安装目录下的src.zip文件;2. 打开eclipse: Window菜单->Preference->Java->Installed ...

同一段代码在Eclipse下编译出错但是用cmd能正常编译运行
那请问你在cmd下是怎么运行的?你应给在java DosPromptInputData 后面应该还有参数吧,否则args[0],args[1]怎么会有值?但是你在eclipse下运行的时候给参数了么?不给的话args[0]当然是数组越界了

Eclipse不编译如何解决 eclipse不能自动编译解决攻略教程
3.还有种情况是remove掉 JRE System Library,重新导入即可编译。但是什么原因导致的还不清楚。eclipse 不能自动编译解决方案 1,看看project -- Build Automatically有没有勾上?如果没有,勾上以后,clean一下,重启eclipse 2,看看你的lib里面有没有不用的jar包,看你的.classpath文件中有没有错误的路径....

在eclipse里代码运行没有错误,但是最后显示编译错误“error: Syntax e...
有中文字符或者符号,包括空格。上次遇到一个问题,检查了一遍语法没错误,后来发现是拷贝代码的时候有一部分中文空格没删除,就出现这个问题了。一个个删除就OK了。

为什么我用eclipse写完Java编译运行的总不是当前窗口的程序
主函数写错。比如:我把“String args[]”写成“String args”,结果编译不出来。

eclipse类明明存在但是Import显示can not be resolved
可能导致的原因是:1,jdk不匹配或不存在,项目指定的jdk版本号和eclipse使用的版本号不一致。2,jar包缺失或冲突但找不到"xx"所在的jar包时,会报这个错误。另外出现相同的jar包也会报这个错误。3,eclipse查找项目类型的策略所致,由于一些特殊原因,eclipse没有自动编译源码。

用eclipse编译安卓软件的时候检查没有出问题,但是一旦运行时就提示...
8。游戏或软件有bug或错误或带可疑启动木马!(试试:360系统急救箱,系统修复,全选,立即修复!网络修复,开始修复!再点:开始急救!重启后,点开“文件恢复区”,全选,彻底删除文件)!9。再不行,开始菜单,运行 ,输入cmd, 回车,在命令提示符下输入(复制即可) :for %1 in (%windir%\\...

eclipse ee中javascript编译显示错误
eclipse ee中javascript编译显示错误一般可以忽略。在Eclipse中,js文件常常会报错。可以通过如下几个步骤解决:第一步:去除eclipse的JS验证:将windows->preference->Java Script->Validator->Errors\/Warnings-> Enable Javascript Sematic validation前面的勾去掉;第二步:右键项目 -> properties -> Builders ...

eclipse c++ cout endl提示错误,编译没有问题
你的错误应该是少加了头文件,你可以加一下 include <stdio.h> include <stdlib.h> include <string.h> include <algorithm> 望采纳,谢谢

相似回答