Здравствуйте!
Я разрабатываю Spring MVC веб-приложение и мне нужно чтобы оно работало на Jetty-сервере, не требующем внешнего контейнера.
Я добавил сервер jetty стандартным образом через "edit run configuration".
Он также успешно отображается в Project Structure.
Но, когда я запускаю Jetty то он просто не запускается и выдает мне следущее:
"C:\Program Files\Java\jdk1.8.0_65\bin\java" -DSTOP.PORT=0 -Dcom.sun.management.jmxremote= -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -DOPTIONS=jmx -Didea.launcher.port=7535 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA 15.0.4\bin" -Dfile.encoding=windows-1251 -classpath "D:\jetty-distribution-9.3.7.v20160115\start.jar;C:\Program Files\Java\jdk1.8.0_65\lib\tools.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA 15.0.4\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain org.eclipse.jetty.start.Main --module=jmx C:\Windows\Temp\context4config\jetty-contexts.xml
[2016-03-03 07:17:55,511] Artifact DVDExchange:war exploded: Server is not connected. Deploy is not available.
Detected server http port: 8080
java.nio.file.AccessDeniedException: C:\Windows\Temp\context4config\jetty-contexts.xml
at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:90)
at sun.nio.fs.WindowsLinkSupport.getRealPath(WindowsLinkSupport.java:259)
at sun.nio.fs.WindowsPath.toRealPath(WindowsPath.java:836)
at sun.nio.fs.WindowsPath.toRealPath(WindowsPath.java:44)
at org.eclipse.jetty.start.FS.toRealPath(FS.java:165)
at org.eclipse.jetty.start.StartArgs.addUniqueXmlFile(StartArgs.java:217)
at org.eclipse.jetty.start.StartArgs.resolveExtraXmls(StartArgs.java:1123)
at org.eclipse.jetty.start.Main.processCommandLine(Main.java:342)
at org.eclipse.jetty.start.Main.main(Main.java:74)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Usage: java -jar start.jar [options] [properties] [configs]
java -jar start.jar --help # for more information
Disconnected from server
Process finished with exit code -9
Возможно, одна из причин - это пустой файл jetty-web.xml
Как мне все-таки застваить Jetty работать?
Приведите пожалуйста весь список файлов что нужно описать, а еще лучше поделитесь живым примером (туториалом или исходником), где четко все описано что и зачем. Мне очень срочно нужно разобраться с этим jetty.
Ответ
Отвечаю на собственный вопрос, дабы поделиться со всеми опытом.
Не во всех уроках есть информация о том, что нужно нажать галочку на Use custom context root
Без этой галочки сервер и не запускался, хотя Intellij IDEA пропускала такую конфигурацию и не требовала, чтобы эта галочка была отмечена, т.е. спокойно можно было нажать Apply и без нее. В поле рядом с этим checkbox через слэш пишите что угодно, что хотите, чтобы отображалось в адресной строке браузера после localhost:8080. И вуаля - все работает.
Также проверьте настройки версии языка в IDEA и конкретно в проекте - они должны удовлетворять требованиям вашей текущей версии сервера Jetty.
Надеюсь вам это тоже поможет если у вас возникла подобная ситуация.
Комментариев нет:
Отправить комментарий