这篇“jspXCMS开发环境下部署的方法和原理是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“jspXCMS开发环境下部署的方法和原理是什么”文章吧。
Tomcat部署目录
Tomcat部署非常简单,直接把程序复制到{Tomcat安装目录}/webapps目录下即可。该目录下会有很多默认的文件夹,如docs examples host-manager manager ROOT,这些都是Tomcat的文档、演示以及管理平台,实际使用中都不需要,如果配置不当甚至还会有安全隐患。所以在部署前,要先删除这些文件夹。
webapps下有一个特殊的文件夹ROOT,放在该目录下会作为Tomcat访问的根目录,比如/webapps/ROOT/index.html的访问地址为http://localhost:8080/index.html。而/webapps/abc/index.html的访问地址则为http://localhost:8080/abc/index.html。因此大部分情况下,都是部署在ROOT目录。
通过修改tomcat的server.xml文件可以改变tomcat的部署位置,但如果不是非常精通Tomcat,我们不建议你这么做。特别是在部署碰到错误时,更应该放弃这种做法。我们碰到过很多因为修改tomcat配置导致错误的案例。
maven目录结构与部署的关系
/src/main/java/ 源码目录。编译后会保存在/target/classes/目录。该目录不用直接参与部署。
/src/main/resources/ 资源目录。编译后会也会保存在/target/classes/目录。该目录不用直接参与部署。
/src/main/wabapp/ web程序的页面、图片、css、js等文件。该目录的文件可以需要部署在{tomcat}/webapps/ROOT/目录下。如/src/main/webapp/index.html则部署到{tomcat}/webapps/ROOT/index.html。
/target/classes/ 编译后会自动生成该目录,包含/src/main/java/和/src/main/resources/中的内容。该目录下的文件需要部署在{tomcat}/webapps/ROOT/WEB-INF/classes/目录下。
综上所述,只要将/src/main/wabapp/和/target/classes/复制到tomcat相应目录即可,但还缺少依赖包,即{tomcat}/webapps/ROOT/WEB-INF/lib/目录下的jar包。
maven打包
使用mvn package或者mav install可以得到完整的war包。直接在命令行使用maven命令,或者使用eclipse、idea等开发工具中相应的功能,都可以实现打包。
打包后在/target目录下会出现类似jspxcms-9.0.0.war的文件。war文件和zip文件格式是一样的,可以使用解压软件打开。解压后得到的文件就是上述的/src/main/wabapp/、/target/classes/和依赖包/WEB-INF/lib/组成的。
war部署
war文件可以直接部署到{Tomcat安装目录}/webapps/运行tomcat后会自动解压,解压的目录和war文件名是一样的,比如{Tomcat安装目录}/webapps/jspxcms-9.0.0.war会解压成{Tomcat安装目录}/webapps/jspxcms-9.0.0。通过上面的知识可以知道,要访问到这个程序,访问地址应该是http://localhost:8080/jspxcms-9.0.0/,而这个访问地址http://localhost:8080/是无法访问的。这显然不是我们想要的。这时需要将jspxcms-9.0.0.war重命名为ROOT.war,解压后成{Tomcat安装目录}/webapps/ROOT/,这样就可以通过http://localhost:8080/访问了。
有一点需要注意,如果一个目录已经存在{Tomcat安装目录}/webapps/ROOT/,只替换ROOT.war包,这样不会重新解压。需要将ROOT目录删除再替换ROOT.war文件才会重新解压。
以上就是关于“jspXCMS开发环境下部署的方法和原理是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。