Tomcat Jetty容器中部署项目的注意事项与区别

        <dependency>
            <groupId>javax.servlet.jspgroupId>
            <artifactId>jsp-apiartifactId>
            <version>${jsp.version}version>
            
            <exclusions>
                <exclusion>
                    <artifactId>servlet-apiartifactId>
                    <groupId>javax.servletgroupId>
                exclusion>
            exclusions>
        dependency>
        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>javax.servlet-apiartifactId>
            <version>${servlet.version}version>
            
        dependency>
        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>jstlartifactId>
            <version>${jstl.version}version>
            
        dependency>

在jetty容器中运行需要打开provided,因为jetty容器中已经自带了servlet,jstl和jsp的实现。但当项目需要部署到Tomcat中时,由于Tomcat容器未带有servlet,jstl和jsp的实现所以需要关闭provided,将相应的包代入。

在Jetty环境中若Jetty不设置项目的基本Context则相应的${ctx},即Context Path无法找到相应的项目路径,所以配置Jetty项目时需要配置好相应的Context。

<plugin>
    <groupId>org.eclipse.jettygroupId>
                    <artifactId>jetty-maven-pluginartifactId>
                    <version>9.1.6.v20160112version>
                    <configuration>
                        <stopPort>9966stopPort>
                        <stopKey>stop-jetty-for-itstopKey>
                        <webAppConfig>
                            <contextPath>/${project.build.finalName}contextPath>
                        webAppConfig>
                    configuration>
                    

                plugin>

更高版本的mysql-connector-java在配置到jetty时需要被jetty所依赖,但Tomcat不需要类似的操作。

你可能感兴趣的:(研发管理)