spring boot应用程序部署到专用的jetty实例

时间:2014-08-14 18:45:36

标签: jetty spring-boot

如何将使用spring boot构建的“war”文件部署到jetty?当我将war文件部署到jetty时,我无法访问Spring启动应用程序的restful服务。

我遵循的步骤:

  1. 参考Spring boot war文档,我创建了一个war文件。我可以在war文件中看到这些文件。
    1. 将战争复制到${jetty home}/webapps。 (在/ usr /共享/码头/ web应用)
    2. 添加了一个带有我的战争名称的contexts.xml文件(不包括.war后缀)
    3. 重新启动的Jetty服务
  2. 当我浏览localhost:8080时,我看到了我的网络应用程序的文件夹结构。 (即WEB-INF资源) localhost中没有可用的spring资源路径。我的spring应用程序有JAX-RS资源。下面是我的ApplicationInitializer类(Groovy)。

    class ApplicationInitializer extends SpringBootServletInitializer {
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            Properties props = getPropertiesFromArgs()
            return new SpringApplicationBuilder([Application, "classpath:/META-INF/com/foo/testapp/bootstrap.xml"] as Object[])
                .properties(props)
    
        }
    

    它的as-if码头开始没有开始春天的背景。我错过了什么?如果我运行弹簧靴内置的超级罐,应用程序工作正常。我可以访问应用程序的所有其他资源。

1 个答案:

答案 0 :(得分:0)

想通了。我没有使用符合Servlet 3.0标准的jetty版本。 sudo apt-get install jetty提取了2.5兼容版本。一旦我更新到Jetty 9.x,它工作正常。