首页 > myeclipse 遇到的一些问题及解决方案

myeclipse 遇到的一些问题及解决方案

1.、提示键配置





一般默认情况下,Eclipse ,MyEclipse 的代码提示功能是比Microsoft Visual Studio的差很多的

,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的,要开发者自己去手动配置。如果开发

者不清楚的话,就不知道Eclipse ,MyEclipse的代码提示功能一样能像Microsoft Visual Studio的

代码提 示功能一样强大。

先举个简单的例子说明问题所在,例如在Eclipse ,MyEclipse代码里面,打个foreach,switch等

这些,是无法得到代码提示的(不信自己试试),其他的就更不用说了,而在Microsoft Visual

Studio 里面是得到非常友好的代码提示的。实际上,Eclipse ,MyEclipse代码里面的代码提示功能

默认的一般 是点“.”,一般是有了点“.”,才会有代码提示。

原理:“Auto Activation triggers for java”这个选项就是指触发代码提示的的选项,把“.”

 改成“.abcdefghijklmnopqrstuvwxyz(,”的意思,就是指遇到26个字母和.,(这些符号就触发

代码提 示功能了。增强Eclipse ,MyEclipse 的代码提示功能,具体怎么样来配置?

下面开始说步骤:

1. 打开MyEclipse ,然后“window”→“Preferences”

2. 选择“java”,展开,“Editor”,选择“Content Assist”。

3. 选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto 

Activation triggers for java”这个选项。其实就是指触发代码提示的就是“.”这个符号.

4. “Auto Activation triggers for java”这个选项,在“.”后加abc字母,方便后面的查找修改。然后“apply”,点击“OK”。

5. 然后,任意选择个项目“File”→“Export”,在弹出的窗口中选择“Perferences”,点击“下一步”。

6. 选择导出文件路径,本人导出到桌面,输入“test”作为文件名,点击“保存”。

7. 在桌面找到刚在保存的文件“test.epf”,右键选择“用记事本打开”。

8. 可以看到很多配置MyEclipse 的信息

9. 按“ctrl + F”快捷键,输入“.abc”,点击“查找下一个”。

10. 查找到“.abc”的配置信息.

11. 把“.abc”改成“.abcdefghijklmnopqrstuvwxyz(,”,保存,关闭“test.epf”。

12. 回到MyEclipse 界面,“File”→“Import”,在弹出的窗口中选择“Perferences”,点

击 “下一步”,选择刚在已经修改的“test.epf”文件,点击“打开”,点击“Finish”。该步骤

和上面 的导出步骤类似。

13. 最后当然是进行代码测试了。随便新建一个工程,新建一个类。在代码输入switch,foreach等

进行 测试。你立即会发现,果然出了提示,而且无论是敲哪个字母都会有很多相关的提示了,很流

畅,很方便。

总结:“Auto Activation triggers for java”这个选项就是指触发代码提示的的选项,把“.”改

成 “.abcdefghijklmnopqrstuvwxyz(,”的意思,就是指遇到26个字母和.这些符号就触发代码提示功能了。

最后:自动提示弹出的时间最好改成100毫秒以下,不然你都完事了,自动提示才弹出来。





2.调整Myeclipse中代码的显示大小





window->preferences->general->apperance->colors and fonts->basic->text->fonts

然后点击change 就可以改了!









3、.MyEclipse里面如何用快捷键打出System.out.println():

如果你打印Sy字符时没有提示名为sysout的命令名,你可以自定义要打印的字符串和命令名。类似(可key—value)可以在 Windows->Preferences->Java->Editor->Templates->new 这里就可以自定义了。









4.提示快捷键设置:

打开Window->Preference->Generate->Keys,出现一个大的对话框,"Alt+/"对应的命令名称是:"Content Assist",找到该条命令,单击选中它。这时在窗口下面的Binding 和 When 会出现自动显示该命令的信息,删掉Binding中的信息,然后按下键盘Alt+/,这个时候Binding就会自动显示Alt+/的快捷键,然后when窗口中选择Editing Java Source ,最后点击OK。





5.java.io.IOException: 句柄无效。





java.io.IOException: 句柄无效。

at java.io.FileInputStream.close0(Native Method)

at java.io.FileInputStream.close(Unknown Source)

at java.io.PushbackInputStream.close(Unknown Source)

at java.util.zip.InflaterInputStream.close(Unknown Source)

at java.util.zip.ZipInputStream.close(Unknown Source)

at org.apache.catalina.util.ExtensionValidator.getManifest(ExtensionValidator.java:375)

at org.apache.catalina.util.ExtensionValidator.validateApplication(ExtensionValidator.java:184)

at org.apache.catalina.core.StandardContext.start(StandardContext.java:4154)

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)

此类异常和jdk的版有点关系.解决办法:

1.换个高版本的JDK.(未试过)

2.将tomcat的虚拟机(指向jre目录)指向JDK目录. 如:tomcat原来的虚拟机是指向:C:Program FilesJavajre1.6.0_02inclientjvm.dll 则指向C:Program FilesJavajdk1.6.0_02jreinclientjvm.dll

(本人已测试通过)









6.smartupload 上传文件时出现 java.lang.NegativeArraySizeException





解决方法:



这个错误还是很少见到的。因为很少有人GET提交这种上传的表单。 





上传文件是出现  java.lang.SecurityException   





解决方案 : smart.setAllowedFilesList("doc,txt,jpg");

    smart.setDeniedFilesList("exe,bat,jsp,htm,html");

           

            检查文件中设置权限约束的问题





上传文件时出现 :java.lang.IllegalArgumentException: This path does not exist (1135).





解决方案 : 路径设置问题 修改设置路径





7.在tomcat(版本6.0.33)的 catalina.out中发现大量memory leak的日志









org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap

SEVERE: The web application [] created a ThreadLocal with key of type [com.opensymphony.xwork2.inject.ContainerImpl$10] (value [com.opensymphony.xwork2.inject.ContainerImpl$10@2618d45f]) and a value of type [java.lang.Object[]] (value [[Ljava.lang.Object;@51dce88]) but failed to remove it when the web application was stopped. This is very likely to create a memory leak.

 

这个是由于tomcat6.0.24以后的版本有加一个监控memory leak的listener 在tomcathome/conf/server.xml

 

   

但是这个监控有bug才导致的误报





解决方式任选一种 1 把tomcat降级为6.0.24以下的版本

               2 将tomcat升级为7.0.6以上的版本

               3 在server.xml中去掉JreMemoryLeakPreventionListener的listener









8.新建类的时候自动生成项目名、包名、时间、开发者名字等等





在MyEclipse选择Windows菜单下的Preferences->Java->Code Style->Code Templates->New Java files,点击右边的Edit Template,在里面就可以设置自己喜欢的属性了,敲进“$”会有自动提醒功能。设置完成之后,每建一个类都会在顶部自动生成自己设置的属性。









9.Exception in thread "main" java.lang.OutOfMemoryError: Java heap space解决方法





解决方案[转]

一直都知道可以设置jvm heap大小,一直用eclipse写/调试java程序。一直用命令行or console加参数跑程序。现象:在eclipse的配置文件eclipse.ini中设置-vmargs -Xms500m -Xmx1024m,在eclipse中直接run 或者debug某些耗内存的程序时依然出现java.lang.OutOfMemoryError: Java Heap Space错误,即通常认为的内存不足,java虚拟机内存不够用。而在命令行加这些参数则有效果,不会出错。这说明一个问题,这些参数根本没有起作用。今天需要在eclipse里调试程序,还没到需要调试的地方就heap error了,在网上搜了很多地方,得到了最终的答案:

选中被运行的类,点击菜单‘run->run...’,选择(x)=Argument标签页下的vm arguments框里

输入 -Xmx800m, 保存运行。

原来还需要对每个project单独设置,汗...





同时设置 hibernate.hbm.xml 文件  2000





同时加入 缓存的定期清除操作  

                 eg:    session.save(people);



if((file.length())%20 == 0){

session.flush() ;

session.clear() ;

}













10. 问题 : org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row  count: 0; expected: 1





解决方案:hibernate 中的属性字段与设置的不一致  修改属性字段 









11.myeclipse 下载 hibernate ant 工具  网址:





http://www.jboss.org/tools/download.html









12. Ant 中的build.xml 文件默认打开文件设置   





preferences==general==editors==file Associations 









13.修改  jsp 默认的 pageEncoding 





preferences === jsp 修改  encoding 为 Chinese…… 









14. Tomcat   信息: Not binding factory to JNDI, no JNDI name configured   没事的,只是警告!!





解决方案:没有加入配置文件

      File file=new File("./Hibernate.cfg.xml");

      Configuration conf = new Configuration().configure(file);













15.Myeclipse 错误 An internal error has occurred 解决办法。





     给MyEclipse的快捷方式加个参数再重新启动一次。

     步骤如下:右键选中快捷方式属性选项,在快捷方式页,目标一项最后加上-clean选项,如     C:MyEclipse6eclipse.exe -clean. 然后重新启动一下MyEclipse。

 

 

1, 当tomcat启动的时候出现下面错误: 





[ERROR] org.apache.catalina.session.ManagerBase - IOException while loading persisted sessions: java.io.EOFException 





或者 

严重: IOException while loading persisted sessions: java.io.EOFException 

严重: Exception loading sessions from persistent storage 





原因是: 





是因为保存在硬盘上的session数据读取失败,问题似乎不大,但是如果不处理一下,每次启动都会出现这个问题,处理方法如下: 





将work(例如:tomcat5.5.20workCatalinalocalhost\_下面的文件清空,主要是*.ser文件,或者只是删除掉session.ser亦可。 





根据上面所说,我把我的workCatalina下的内容全部删除,问题成功解决。在此感谢,要不然有时候启动tom大傻猫的时候就会见到这个异常 很烦的!









2.警告: No FormBeanConfig found under 'null'





解决: 检查formbean的配置









3.Referenced file contains errors





换了myeclipse版本出现这样错误:Referenced file contains errors (http://struts.apache.org/dtds/struts-2.0.dtd). For more information, right click on the 

 message in the Problems View and select "Show Details..."

解决办法: 在myeclipse9.0,      [MyEclipse]-[Files-Editors]-[XML]-[XML Catalog]    查找到  “-//Apache Software Foundation//DTD Struts Configuration 2.1//EN ”   和

“-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN ” 

只需将struts.xml文件  “-//Apache Software Foundation//DTD Struts Configuration 2.0//EN ”   2.0修改为对应的 2.1或是2.1.7   ctrl+s即可





4.严重: Exception starting filter struts2 





  java.lang.NoClassDefFoundError: org/





解决方案:导入 commons-lang- 2.5.jar   javasssist-3.11.0.GA.jar









5.





















6.Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (18810408 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.





解决方案:将 文件夹 C:Program FilesMySQLMySQL Server 5.0 下的 my.ini 文件最后增加 





max_allowed_packet= ..









7.Tomcat启动时重复出现Socket accept failed错误

严重: Socket accept failed

java.net.SocketException: select failed

 at java.net.PlainSocketImpl.socketAccept(Native Method)

 at java.net.PlainSocketImpl.accept(Unknown Source)

 at java.net.ServerSocket.implAccept(Unknown Source)

 at java.net.ServerSocket.accept(Unknown Source)

 at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:61)

 at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:310)

 at java.lang.Thread.run(Unknown Source)

2012-3-29 19:11:30 org.apache.tomcat.util.net.JIoEndpoint$Acceptor run 





解决:

开始-cmd-netsh winsock reset-回车-重启服务器。

简单来说netsh winsock reset命令含义是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。





winsock是windows网络编程接口,从Windows XP SP2开始内置了一条命令使用netsh能够对该接口进行修复。





netsh是一个能够通过命令行操作几乎所有网络相关设置的接口。比如设置IP,DNS,网卡,无线网络等。

netsh winsock reset:

先进入netsh

然后进入winsock这个部件

对winsock这个部件执行reset命令。

效果就是重置Winsock。对于一些WinSock被破坏导致的问题有奇效。在netsh出现之前,对于WinSock问题的修复是非常繁琐的。

 

8;hibernate中遇到的问题

org.springframework.orm.hibernate3.HibernateQueryException:tb_userinfo is not mapped [from tb_userinfo u order by u.id desc  ]; 

 

纠结了好长时间,上网一查才知道好多人出现过相同问题,原因一般有:

1,hbm.xml 没在beans.xml中配置

可我有啊

com.phj.model 

 

 

2,find()方法中的类名未写全 

我原来是

this.getHibernateTemplate().find("from tb_userInfo");

 

应该为

this.getHibernateTemplate().find("from com.phj.model.UserInfo");

 

 

问题原因:tb_userInfo 是实体对象名,而非表名,原因在此!!

 

转自:http://blog.csdn.net/feihong247/article/details/7927992

转载于:https://www.cnblogs.com/losesea/p/3417291.html

更多相关:

  • THE START更新堪称轻量级MATLAB的一款软件最新版-Maplesoft Maple 2019.2 中文版。Maple是符号和数字计算环境,也是一种多范式编程语言,由Maplesoft开发,还涵盖了技术计算的其他方面,包括可视化,数据分析,矩阵计算和MATLAB连接。MapleSim工具箱添加了用于多域物理建模和代码生成的...

  • 同学们,你们在学习他人的代码,是否见过这样的代码 def main(): def user_info(gender): 当你还是个小萌新时,你一定会认为这是个很牛逼的语法。 当你有了一点基础时,你一定会想要了解这个语法,并且尝试去使用它。 那么今天,我们便来了解这个牛语法。 有了一点点的python基础,我们来看这段代...

  •     自从用了这些快捷键,鼓励师也不需要了,代码开发效率蹭蹭提升!!! ctrl+shift+[折叠代码 (这个比ctrl+k ctrl+l、ctrl+k ctr+j不知道好用多少倍!) ctrl+shift+]展开代码 ctrl+shift+T打开手贱不小心关掉的窗口 【推荐】ctrl+shift+O打开当前文件...

  • 在提交代码之前,建议最好先Fetch代码下来(如果有冲突,系统会提示),然后再操作Merge到本地分支,这样做是为了避免有其他人同时修改了当前分支,如果直接用Ctrl+T(pull代码)极有可能覆盖本地分支最新代码,安全起见先Fetch代码(Ctrl+Alt+Shift+1)——所谓:小心驶得万年船!...

  • 每次复制代码时,如果代码里有 // 这样的注释就容易让格式乱掉,通过下面的设置就可以避免这种情况。 粘贴代码时取消自动缩进 VIM在粘贴代码时会自动缩进,把代码搞得一团糟糕,甚至可能因为某行的一个注释造成后面的代码全部被注释掉,我知道有同学这个时候会用vi去打开文件再粘贴上去(鄙人以前就是这样),其实需要先设置一下 s...

  • 该楼层疑似违规已被系统折叠 隐藏此楼查看此楼使用的是MySQL8+,nacos是1.2.1的,在网上翻了很多资料,查了很多博客,也尝试了很多,在nacos文件夹下创建plugins/mysql文件夹并放入MySQL的jar包、在nacos的application.properties的文件中添加MySQL高版本的驱动配置等等等等,但是...

  • SpringBoot默认上传文件大小不能超过1MB,超过之后会报以下异常: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitte...

  • 首先我们使用新的API方法连接mysql加载数据 创建DF import org.apache.spark.sql.DataFrame import org.apache.spark.{SparkContext, SparkConf} import org.apache.spark.sql.{SaveMode, DataFrame...

  • 本文目的是测试将shark和hadoop2进行整合。 本来打算使用Shark 最新版0.9.0 ,但是官方好像还没有针对与Hadoop2的正式下载地址。(这个要说明一下,官方只提供了源码,并没有找到编译好的0.9.0 for hadoop2 ,也许需要自己编译一个,没有证实) shark0.9.0 的需要: Scala 2.10.3S...

  •   今天刚学习mybatis,遇到了一个错误,纠结了半天的时间,所以将发现的问题和解决得方法写一下。   错误信息如下: java.lang.ExceptionInInitializerErrorat com.ibatis.po.TestSysArea.testInsert(TestSysArea.java:31)at sun.r...