“Retrieving archetypes:”期间发生了内部错误: 创建新的Maven项目时出现Java堆空间不足。

7

我正在学习Spring,所以我正在Eclipse中创建一个新的Maven项目。

当我尝试创建一个新的Maven项目时,它会尝试检索原型并报错。

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

创建Maven项目时出现错误窗口

我遵循的步骤: 新建 -> Maven 项目 -> 使用默认工作区位置(选中)并单击下一步 -> 等待检索原型并出现错误。

我已附上屏幕截图供参考。

注意:我已经尝试了几个小时来解决这个问题,搜索了谷歌和堆栈交换,将eclipse.ini文件中的-Xmx大小从512m更改为1024m,并尝试重新启动eclipse,但那时eclipse拒绝启动。 同时, '窗口 -> 首选项 -> Maven -> 在启动时下载存储库更新索引'在我的eclpise中未启用,这是在stackoverflow上类似问题的其他答案中建议禁用它。

请帮忙解决这个问题。


如果您尝试从命令行运行Maven,会发生什么情况?mvn archetype:generate - Jorge Campos
@JorgeCampos,它下载了很多文件然后会要求你选择一个数字或者应用过滤器(格式:[groupId:]artifactId,大小写敏感并包含):966:) :”,我不知道该怎么做。 - prnjn
然后尝试在Eclipse中配置外部Maven并使用它。 - Jorge Campos
@JorgeCampos 我在Eclipse中配置了外部Maven,但是当我尝试创建新的Maven项目时,在同一点上仍然遇到相同的错误。 - prnjn
1
然后增加Eclipse的PermGen空间。在eclipse.ini文件中添加以下参数:-XX:PermSize=512M -XX:MaxPermSize=6144M,并进行测试。请在此处阅读以确保您在首次尝试时没有出错:https://wiki.eclipse.org/FAQ_How_do_I_increase_the_permgen_size_available_to_Eclipse%3F - Jorge Campos
似乎是一个bug,我暂时通过禁用Nexus索引器来解决这个问题。Windows->Preferences->Maven->Archetypes.希望这可以帮到你。 - Luis Carlos
6个回答

9

正如上方评论中Jorge Campos建议的那样,我增加了Eclipse的PermGen空间。在eclipse.ini文件中添加以下参数并重启Eclipse:

-XX:PermSize=512M 
-XX:MaxPermSize=6144M 

现在它已经工作了。

2
我曾经遇到过同样的问题,我复制了“-XX:PermSize=512M -XX:MaxPermSize=6144M”并将其粘贴到ini文件的末尾,保存后重新启动eclipse,最终问题得以解决。 - VyTcdc

3

只需清除eclipse.ini中的数据,将下面的代码复制并粘贴到其中。由于您的默认内存小于所需内存,因此无法检索原型。

-----------------------eclipse.ini---------------------------

-startup
../Eclipse/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
--launcher.library
../Eclipse/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.300.v20150602-1417
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.7
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:MaxPermSize=512m
-Xms512m
-Xmx6144m
-Xdock:icon=../Resources/Eclipse.icns
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts  


3

您的工作区已经损坏。

如果您切换工作区并尝试创建新的Maven项目,问题将会消失。

提醒一下:您可以从文件>切换工作区>...切换您的工作区。 enter image description here


2

切换工作区解决了我的问题。文件 | 切换工作区


1
谢谢伙计,重新安装Eclipse后我意识到这就是答案。 - Dan Ortega
你有没有想到一种方法来“清理”“损坏”的工作区? - Federico Destefanis
@FedericoDestefanis 我没有。可能是在<workspace>/.metadata/.plugins中出了问题。只需备份Eclipse设置并创建另一个工作区即可。 - Philip Rego

0
在我的情况下,问题出在我使用的互联网网络上。当我将笔记本电脑连接到我的热点移动数据时,一切都正常工作。

0

我也遇到了同样的问题,我所做的就是重新启动我的笔记本电脑,然后它就可以正常工作了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接