В одном из моих проектов я использовал Lift 2.5 M4 и Scala 2.10.0. В этом проекте я использую Jetty 8.1.10.v20130312. Но во время выполнения проекта через mvn jetty я получаю неожиданное исключение.Исключение «Слишком много открытых файлов» во время работы mvn org.mortbay.jetty: jetty-maven-plugin: run
Я настроил плагин в пристани pom.xml ниже в пути:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.10.v20130312</version>
<configuration>
<systemProperties>
<systemProperty>
<name>org.apache.cocoon.log4j.loglevel</name>
<value>WARN</value>
</systemProperty>
</systemProperties>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>9090</port>
<maxIdleTime>30000</maxIdleTime>
</connector>
</connectors>
<webApp>
<contextPath>/</contextPath>
</webApp>
<scanIntervalSeconds>0</scanIntervalSeconds>
<stopKey>stop</stopKey>
<stopPort>9999</stopPort>
</configuration>
</plugin>
я получаю ниже исключение во время выполнения команды: - МВН org.mortbay.jetty: Пристань-Maven-плагин: запустить
2013-04-24 06: 49: 39.216: WARN: oeja.AnnotationParser: EXCEPTION java.io.FileNotFoundException:/home/ayush/scala-lift/knolgame/target/classes/com/knolgame/lib/TransactionStatus $ $ anonfun $ find $ 1.class (Слишком много открытых файлов) at java.io.FileInputStream.open (собственный метод) at java.io.FileInputStr eam. (FileInputStream.java:106) at org.eclipse.jetty.util.resource.FileResource.getInputStream (FileResource.java:286) at org.eclipse.jetty.annotations.AnnotationParser.parse (AnnotationParser.java:754) на org.eclipse.jetty.annotations.AnnotationParser.parse (AnnotationParser.java:747) на org.eclipse.jetty.annotations.AnnotationParser.parse (AnnotationParser.java:747) в org.eclipse.jetty.annotations .AnnotationParser.parse (AnnotationParser.java:747) в org.eclipse.jetty.annotations.AnnotationParser.parse (AnnotationParser.java:747)
Но когда я использую причал 6.1.25, он прекрасно работает.
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.25</version>
<configuration>
<systemProperties>
<systemProperty>
<name>org.apache.cocoon.log4j.loglevel</name>
<value>WARN</value>
</systemProperty>
</systemProperties>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>9090</port>
<maxIdleTime>30000</maxIdleTime>
</connector>
</connectors>
<contextPath>/</contextPath>
<scanIntervalSeconds>0</scanIntervalSeconds>
<stopKey>stop</stopKey>
<stopPort>9999</stopPort>
</configuration>
</plugin>
Может ли кто-нибудь помочь мне решить эту проблему? В моем приложении я должен использовать последнюю версию Lift, Scala и причал.
Заранее спасибо.
С уважением, Ayush
Спасибо за ваш ответ. Я проверил свой ulimit. Это уже без ограничений. –
Затем, пожалуйста, используйте lsof, как описано выше, чтобы проверить, какие файлы открываются вашим jvm при возникновении этой ошибки. –
Я столкнулся с аналогичной проблемой при обновлении с причала 6 до 8. Кажется, что причал 8 делает * что-то *, что открывает много файлов (хотя это не выглядит медленнее). Для решения проблемы я предпринял следующие два шага: 1) удалить веб-параметры и контексты по умолчанию, которые встроены в часть причала 8, установить 2) вверх по ограничению программных файлов 4096, а ограничение жестких файлов - до 10240 – Taylor