Eclipse开发java的问题

1: Eclipse导入Maven项目后,执行 mvn clean install后,出现如下错误 :

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

解决方法:进入 Window > Preferences > Java > Installed JREs

Finish 即可

 

2: tomcat启动的问题 : java.lang.OutOfMemoryError: PermGen space

解决:

网上说PermGen space区域的内存溢出,一般都是因为Tomcat中的部署项目过多导致,tomcat启动时需要加载每个项目的第三方jar,当第三方jar包过多,超过jvm的默认内存(4M)时,就会抛这个异常。我想了下,这个项目我以前在其他机器上也部署过没有内存溢出的问题,现在由于新部署的机器是64位的jre,导致程序有很多修改,尤其是底层和硬件通信模块变动较大,且添加了第三方jar包,不知是否是因为这个原因导致的内存溢出。先试下增大tomcat的jvm内存,试试能否解决该问题。网上还有一人也是遇见这个异常,但是他的原因是因为jasper配置sql的有问题(源网址由于博客园判定非法故无法贴出),我虽然要用到过jasper但是一直没改过应该不是这个原因。

1: 删除webapps中多余的网站项目。

2: 修改tomcat的tomcat/bin/catalina.bat(linux为catalina.sh),在setlocal(第一行)添加如下JAVA_OPTS初始配置(512m后面含有一个空格):

   1 setlocal
   2 JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=512m "

重新启动ok;如果语法有错误,可能会导致tomcat起不来,建议先备份整个tomcat文件夹。但问题原因还是没有解决,而且仔细尝试发现只在调用底层模块时才会出现内存溢出,在未调用底层模块之前是可以正常处理数据库查询请求的

 

3: Eclipse自动提示设置    https://blog.csdn.net/qq_36949176/article/details/86522183

java文件的自动提示

点击java--Editor--Content Assist,把Auto activation triggers for Java里面的内容改为:
.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

 

XML文件配置也是这样的,找到XML--XML Files--Editor--Content Assist
把Prompt when these characters are inserted里面的内容改为:
<=:.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

 

HTML代码自动提示配置也是找到Web--HTML Files--Editor--Content Assist
把Prompt when these characters are inserted内容改为:
<=:.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

 

posted @ 2016-08-18 16:40  南极山  阅读(167)  评论(0)    收藏  举报