Страницы

Поиск по вопросам

пятница, 21 июня 2019 г.

Как запустить свое веб-приложение на Jetty в IntelliJ Idea

Здравствуйте! Я разрабатываю 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.
Надеюсь вам это тоже поможет если у вас возникла подобная ситуация.

Комментариев нет:

Отправить комментарий