Страницы

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

пятница, 10 января 2020 г.

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

#java #xml #spring_mvc #jetty


Здравствуйте!
Я разрабатываю 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.


    


Ответы

Ответ 1



Отвечаю на собственный вопрос, дабы поделиться со всеми опытом. Не во всех уроках есть информация о том, что нужно нажать галочку на Use custom context root: Без этой галочки сервер и не запускался, хотя Intellij IDEA пропускала такую конфигурацию и не требовала, чтобы эта галочка была отмечена, т.е. спокойно можно было нажать Apply и без нее. В поле рядом с этим checkbox через слэш пишите что угодно, что хотите, чтобы отображалось в адресной строке браузера после localhost:8080. И вуаля - все работает. Также проверьте настройки версии языка в IDEA и конкретно в проекте - они должны удовлетворять требованиям вашей текущей версии сервера Jetty. Надеюсь вам это тоже поможет если у вас возникла подобная ситуация.

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

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