使用spring-boot和jetty,我希望能够配置我的应用程序来侦听其他端口,这些端口是以编程方式在运行时添加的 (+ ?)。
我尝试过的:
我跟踪了,它允许我监听多个端口。这是完美的,但不幸的是,只有在启动时才能起作用。
我尝试过将@Autowiring一个类添加到服务中,这样我就可以添加连接器了--我得到了错误No qualifying bean of type [org.eclipse.jetty.server.Server] found ...
build.gradle (依赖关系)
buildscript {
dependencies {
classpat
Spring Boot1.5.3 classes在org.springframework.boot.context.embed中有几个类,还有jetty、tomcat和undertow子包。但是,https://github.com/spring-projects/spring-boot/tree/v2.0.0.M1/spring-boot/src/main/java/org/springframework/boot/context不再包含子目录embed。
像TomcatEmbeddedServletContainerFactory这样的类到哪里去了?
我的项目包含一个jar和一个war模块。jar模块包含到源集main和generated。
我的jar模块gradle.build定义了源代码集,如下所示:
sourceSets {
generated
main {
compileClasspath += sourceSets.generated.output // adds the sourceSet to the compileClassPath
runtimeClasspath += sourceSets.generated.output // adds the sourceSet t
JavaEE6提供了一种在启动时激活JAX-RS应用程序的方法。
问题是我使用的web服务器不符合Java / servlet 3.0,因此如果我们尝试在JAX-RS应用程序上使用启动时加载servlet映射,web服务器(至少jetty是这种情况)将崩溃
"class is not a servlet"
并因此拒绝加载该应用程序。
问题的要点是-要加载contextresolver,唯一可以做到的方法就是通过jax-rs Application子类。
激活Application子类的方法在Jetty和Tomcat/JBoss上的工作方式应该类似,因为我使用jetty进行开发(