1

我在部署到 Tomcat 7 的 Eclipse Indigo 中创建了一个示例 JSF/JDBC 项目。当我输入mysql-connector-java-5.1.21.jar/WEB-INF/lib,出现以下错误:

来自 Eclipse 的一个:

Server Tomcat v7.0 Server at localhost (8) 无法在 120 秒内启动。如果服务器需要更多时间,请尝试在服务器编辑器中增加超时。

另一个来自 Tomcat:

SEVERE: Error waiting for multi-thread deployment of context descriptors to complete
java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:574)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1413)

它们是如何引起的,我该如何解决?

4

3 回答 3

3

正如错误所说,您的堆空间不足。尝试通过在启动 tomcat 时提供以下 JVM 参数来提供更多堆:

java -Xmx1024m

实际的“正确”数量取决于您的硬件设置和应用程序的要求。

于 2012-08-28T09:07:36.043 回答
1

Tomcat 是内存不足的进程,而不是 Eclipse。从您的服务器视图中打开 Tomcat 实例并编辑其启动配置。在 Arguments 选项卡中,为其设置更大的最大堆大小。

于 2012-08-28T13:11:25.497 回答
0

停止 Tomcat v7.0 服务器并再次运行它。你可以尝试改变java堆大小

将 eclipse-home/eclipse.ini 编辑为如下所示并重新启动 Eclipse。-vmargs -Xms256m -Xmx1024m

于 2012-08-28T09:09:56.650 回答