不要让catalogs搞死你的eclipse

楼主终于走出校园,踏上软件职场之路。新人要学的东西有很多,要战胜的东西很多,这些东西除了技术本身,还有对未知领域的恐惧,新接触技术,比如新的框架,可能好几天连一个helloworld级别的东西都写不出来,那种绝望感,真的,我深深体会。

上周末,刚接触maven,这周在做实验的时候,用eclipse创建的web项目,被maven的catalog搞死了我的elcipse好多次。惊恐之余,终于找到解决方案,现在把解决方案写出来,以便今后犯同样的错误的同行借用。

  现在我们来情景再现:

  在我的eclipse点击file->new->other->maven->Maven Project来创建一个新的maven项目.然后点击next,这一步要注意了,如果你选中了create a simple project,则不回出现下列问题。遗憾的是我没有勾选create s simple project.因为我想用一个archetype来创建一个maven project,点击next。不到一分钟,我还来不及选择想要的archetype类型,eclipse已经弹窗报告出错。

 'Retrieving archetypes:' has encountered a problem
An internal error occurred during:"Retrieving archetypes:".

点击详细报告:

An internal error occurred during: "Retrieving archetypes:".
Java heap space

点击OK,结果是冷冰冰的eclipse要求关闭的提示。

参考网上解决方案,你先按照方案一来,如果方案一还没有解决,再参考方案二。

方案一:
  1. 找到Eclipse的根目录下的eclipse.ini文件并用记事本打开.
  2. 修改文件中的以下配置
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx1024m

这是配置你的jvm的默认最小内存。可是我做到这一步的时候,创建一个新的maven项目的时候还是出错,这是回到开头所说的,只要不勾选那个钩就ok了,但是问题是我想用maven的archetype的模板来创建项目啊。然后继续百度,重启eclipse,发现,这家伙,我的eclipse启动的时候,180多兆,完全启动占用的内存是250多兆,每当要创建新的maven项目,这下子内存不到一分钟就奔到600多兆去了。



从网上得到的经验应该是:每次新建项目,maven总是去连接远程的catalogs文件,而可能是我们的网友问题导致连接失败或者无限制的等待,其实我也不知道这与内存的泄露有什么关系,反正eclipse很粗暴的就爆出了内存堆泄露,要强制关闭eclipse,那个catalogs的选项全是空白。

方案二

配置eclipse中的maven archetype选项。

1. 首先去maven官网下载archetype-catalogs.xml文件,或者右键查看源码,然后再本地新建一个archetype-catalogs.xml文件,将复制到的内容粘贴进去,保存。

2. 在eclipse点击windows->preferences->Maven下拉三角形->archetypes有边框有archetypes的配置。选择添加本地的xml配置文件,Add Local Catalogs->File Location选择第一步创建的archtype-catalogs.xml,然后点击Apply->OK。

3. 重启eclipse,再次创建我的maven web项目,如果catalog的默认选项不是Default Local,记得要选择这个选项,再重启eclipse,发现这次不去网上找这个配置文件了,提供选择的catalogs的选择有一大堆,还可以filter过滤想要的模板,而且内存也在正常的200多兆。

  网上也有类似的解决方案,但是没有人能够将这两种解决方案解决起来,如果方案一还没有解决掉的童鞋,可以参考继续方案二。一个非技术性的东西就可以难道一个新人,那种无助感是只有自己能够体会的。由此可见,一个人要想从象牙塔式的生活过渡到真正的社会,从一个学生脱变为一名合格的软件工程师是不容易的。走过的坑多了,以后的路就平坦了。

不要让catalogs搞死你的eclipse的更多相关文章

  1. 【原创】IE11惊现无厘头Crash BUG(三招搞死你的IE11,并提供可重现代码)!

    前言 很多人都知道我们在做FineUI控件库,而且我们也做了超过 9 年的时间,在和浏览器无数次的交往中,也发现了多个浏览器自身的BUG,并公开出来方便大家查阅: 分享IE7一个神奇的BUG(不是封闭 ...

  2. 【原创】三招搞死你的IE11,可重现代码下载(IE Crash keyframes iframe)!

    前言 很多人都知道我们在做FineUI控件库,而且我们也做了超过 9 年的时间,在和浏览器无数次的交往中,也发现了多个浏览器自身的BUG,并公开出来方便大家查阅: 分享IE7一个神奇的BUG(不是封闭 ...

  3. .NET Core单元测试之搞死开发的覆盖率统计(coverlet + ReportGenerator )

    .NET Core单元测试之搞死开发的覆盖率统计 这两天在给项目补单元测试,dalao们要求要看一下测试覆盖率 翻了一波官方test命令覆盖率倒是有支持了,然而某个更新日志里面写着 ["Su ...

  4. wcf 中客户端调用之死 感悟 wcf与原来的webservice2.0 的客户端调用区别(wcf调用完不关闭的话那就把web服务搞死了)

    说到wcf,本人也是刚刚使用所以不是很熟悉 在做项目的时候采用webservice+客户端程序架构 写了一个wcf中的webservice之后,又写了很多的客户端exe程序,有的是轮询调用这个webs ...

  5. YisouSpider你想搞死我的服务器吗?

    在1分钟666次请求中,你占了445次,你大爷的想干啥呢? 42.156.254.30 - - [03/Feb/2016:11:46:00 +0800] "GET /thread-22063 ...

  6. oc学习之路-----搞死指针之内存存储int类型

    关于每个数据类型个字节在内存中的存储地址(以int为例) 先上图 如题,为什么说好的*p = &c是1啊,为什么是513呢,一开始,我也觉得挺惊讶的,后面听老师分析了一下才知道怎么回事,但是还 ...

  7. 今天差点被断电搞死了,幸好IDE的备份救了我

    今天早上,刚好改了几个PAS的源代码,在按CTRL+SHIFT+S(保存全部) 时,突然断电.有电后,发现这些保存的文件都变成乱码了............. DFM,PAS都是这样,幸好DELPHI ...

  8. 【ANT】ant使用

    官网:https://ant.apache.org/,task介绍:https://ant.apache.org/manual/index.html 0.介绍: Ant的构建文件当开始一个新的项目时, ...

  9. [eclipse相关] eclipse 安装svn插件

    最近看到别人带主题的eclipse,非常羡慕,所以也换了一个eclipse,版本是java ee luna 4.4.2,然后得偿所愿有了花花绿绿的代码界面:) 但是差点被svn搞死,~~~~(> ...

随机推荐

  1. 【Win10开发】Toast通知——前台激活

    上篇文章我们将了大体的Toast通知的模板及实例展示,那么,这篇文章就来讲讲Toast的前台激活. 首先是xaml界面,很简单,我们放一个Button和TextBlock,TextBlock用来显示T ...

  2. C# 工作中遇到的几个问题

    C#  工作中遇到的几个问题 1.将VS2010中的代码编辑器的默认字体“新宋体”改为“微软雅黑”后,代码的注释,很难对齐,特别是用SandCastle Help File Builder生成帮助文档 ...

  3. ASP.NET MVC4实现TinyMCE 4.0.20自定义上传功能

    tinymce 插件不提供免费的本地图片上传功能,所以自己将uploadify这个上传插件整合到tinymce,实现本地上传,还用到了jquery.ui插件,先展示全部的代码 @model TinyM ...

  4. ios h5 app avalon tap点击事件失效及点击延迟300ms问题解决方法

    1.ios h5 app avalon tap事件失效 使用MUI制作app界面,使用avalon.js渲染数据,发现在(Android上正常)ios上运行时容器div的avalon的ms-on-ta ...

  5. sql count统计技巧

    select count(1) from table where columnname=value 写成 select count(case when columnname=value than 1 ...

  6. javascript的 Object 和 Function

    一. javascript 的 内置对象: Object 和 Function javascript所有东西,包括 Function 都是对象 . Array  其实是一个 Function 类型的对 ...

  7. 5、python第一天作业

    作业一:编写登陆接口 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 分析: 1.流程控制图 2.编写思路 以r+(读写模式)打开文件,读取文件内容字符串,再写入文件,以字符串的长 ...

  8. UDS(ISO14229-2006) 汉译(No.0 前言)

    UDS protocol 前言 ISO(国际标准化组织)是国际标准机构(ISO成员体)的世界性联合会.国际标准的拟定工作通常由ISO技术委员会负责.为每一个主题而建立的技术委员会由对其感兴趣的成员机构 ...

  9. REST服务介绍二

           之前一篇文章写过REST服务介绍, 今天再次来自回顾一下. REST是一种架构风格. 首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是 HTTP 规范 ...

  10. js for循环中i++ 和 ++i有什么区别?

    平时都是这样写的for循环, for(var i = 0; i < 20 ; i++){ .... } 但我看有的人这样写 for (var i = 0; i < 20 ; ++i) { ...