Я разрабатываю веб-приложение java, где я использую mavenlike инструмент управления проектами. Теперь моя беда в том, что если я выставиться Причал для автосканирования каждых 20 секунд таким образом:PermGen space with jetty
<!-- To launch embded jetty server -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${maven-jetty-plugin.version}</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<webAppConfig>
<contextPath>/${project.name}</contextPath>
<extraClasspath>target/classes;../services/target/classes;</extraClasspath>
</webAppConfig>
<scanTargets>
<scanTarget>target/classes</scanTarget>
<scanTarget>../services/target/classes</scanTarget>
</scanTargets>
</configuration>
</plugin>
Jetty начинается в правильном пути на самом деле я получаю:
[INFO] Started Jetty Server
[INFO] Starting scanner at interval of 20 seconds.
Но при первом сканировании я получаю следующая ошибка:
ERROR ContextLoader - Context initialization failed
java.lang.OutOfMemoryError: PermGen space
Как это можно исправить?
Update 1
Я стараюсь increse пространства PermGen из моего Eclipse IDE таким образом:
, но после первого сканирования я получить обратно ту же самую ошибку.
Как это сделать, чтобы исправить это?
Это означает, что ваш загрузчик классов Webapp не будет выгружен, когда ваш webapp будет перераспределен. Возможно, вы определили ThreadLocals? – flup
Я не знаю значение для ThreadLocals, можете ли вы объяснить, что может быть проблемой, и ссылка разрешит его. – Skizzo
Если вы не знаете, что такое ThreadLocals, вы, вероятно, не используете их. :) Но загрузчик классов определенно не разгружается. – flup