做网站有必要做app吗做公司网站需要花钱吗
2026/4/6 18:05:38 网站建设 项目流程
做网站有必要做app吗,做公司网站需要花钱吗,外贸公司网站建设费用报销,在线课堂网站开发目录 ssm聚合项目 注意事项 ssm聚合项目 以 “hami 音乐项目” 为例#xff0c;hami_parent是父工程#xff0c;打pom包#xff08;需同步到本地仓库供其他项目使用#xff0c;主要就是依赖管理#xff09;。除了hami_core#xff08;打jar包#xff0c;需同步到本地仓…目录ssm聚合项目注意事项ssm聚合项目以 “hami 音乐项目” 为例hami_parent是父工程打pom包需同步到本地仓库供其他项目使用主要就是依赖管理。除了hami_core打jar包需同步到本地仓库供其他项目使用其他均为web项目hami_console 和 hami_portal 都依赖了hami_core。ham-project (父工程POM) ├── ham-core (公共模块, JAR) ├── ham-console (Web模块, WAR) ├── ham-portal (Web模块, WAR) └── ham-file (Web模块, WAR)打包遵循一个原则先打包公共模块。hami_parent直接在maven管理里执行clean 和install。此时会自动打包上面所有模块并同步到本地仓库。放置将 WAR 包复制到 Tomcat 的 webapps 目录下。修改配置文件Tomcat安装目录/config/server.xml。Service nameCatalina1 Connector port8085 protocolHTTP/1.1 connectionTimeout20000 redirectPort8443 URLEncodingUTF-8/ Connector port8010 protocolAJP/1.3 redirectPort8443 secretRequired/ Engine nameCatalina1 defaultHostlocalhost Realm classNameorg.apache.catalina.realm.LockOutRealm Realm classNameorg.apache.catalina.realm.UserDatabaseRealm resourceNameUserDatabase/ /Realm Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue Valve classNameorg.apache.catalina.valves.AccessLogValve directorylogs prefixlocalhost_access_log suffix.txt pattern%h %l %u %t quot;%rquot; %s %b / Context docBasehami_file path/ reloadabletrue/ /Host /Engine /Service Service nameCatalina2 Connector port8075 protocolHTTP/1.1 connectionTimeout20000 redirectPort8443 URLEncodingUTF-8/ Connector port8011 protocolAJP/1.3 redirectPort8443 secretRequired/ Engine nameCatalina2 defaultHostlocalhost Realm classNameorg.apache.catalina.realm.LockOutRealm Realm classNameorg.apache.catalina.realm.UserDatabaseRealm resourceNameUserDatabase/ /Realm Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue Valve classNameorg.apache.catalina.valves.AccessLogValve directorylogs prefixlocalhost_access_log suffix.txt pattern%h %l %u %t quot;%rquot; %s %b / Context docBasehami_portal-1.0-SNAPSHOT path/ reloadabletrue/ /Host /Engine /Service Service nameCatalina3 Connector port8089 protocolHTTP/1.1 connectionTimeout20000 redirectPort8443 URLEncodingUTF-8/ Connector port8012 protocolAJP/1.3 redirectPort8443 secretRequired/ Engine nameCatalina3 defaultHostlocalhost Realm classNameorg.apache.catalina.realm.LockOutRealm Realm classNameorg.apache.catalina.realm.UserDatabaseRealm resourceNameUserDatabase/ /Realm Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue Valve classNameorg.apache.catalina.valves.AccessLogValve directorylogs prefixlocalhost_access_log suffix.txt pattern%h %l %u %t quot;%rquot; %s %b / Context docBasehami_console-1.0-SNAPSHOT path/ reloadabletrue/ /Host /Engine /Servicepath为上下文。启动双击 bin/startup.bat (Windows) 或执行 ./startup.sh (Linux) 启动 Tomcat。访问Tomcat 会自动解压 WAR 包。访问地址为 http://IP地址:端口号/ (例如: http://localhost:8080/)。注意事项部署项目后的上下文对于普通javaweb项目以及maven javaweb项目部署到Tomcat后访问页面必须要加在webapps里的文件名因为Tomcat 默认以 “部署文件名” 作为项目的上下文路径访问Servlet的路径也要加上webapps的文件名如果页面里涉及到访问Servlet需要修改代码修改完如果要在开发软件里运行测试还需要修改Tomcat的上下文路径。但是ssm项目则也需要因为springmvc框架只是负责解析请求时忽略上下文路径即 让 Controller 无需关心上下文。对于hami_parent的打包后的变化对于哈米音乐这个项目hami_parent父工程只是做依赖管理打pom包本身不会生成 JAR 包或者其他也不会有 target 目录这是由它在 Maven 聚合项目中的 “角色定位” 决定的。Maven 中的父工程ham_parent本质是一个 “POM 类型项目”它的唯一作用是统一管理所有子模块ham_core、ham_console 等的依赖版本通过 统一配置所有子模块的构建规则如插件版本、编译环境等通过 聚合所有子模块方便一次性构建整个项目通过 标签。它不包含任何可编译的 Java 代码没有 src/main/java 目录所以根本不需要打包成 JAR/WAR—— 因为没有代码可打包自然也不会生成 target 目录target 是用来存放编译、打包产物的没产物就不会有这个目录。父工程执行 mvn install 时只会把它的 POM 文件hami_parent-1.0-SNAPSHOT.pom安装到本地仓库不会生成 JAR 包。打包父工程会出现的情况Maven 聚合项目的核心特性 ——“一键构建所有子模块”。当你对父工程hami_parent执行 install 或 package 时Maven 会自动识别父工程 pom.xml 中配置的所有子模块然后按依赖顺序自动构建所有子模块不需要你手动逐个打包。原因 hami_parent 的 pom.xml里面一定有一段 配置它明确告诉了 Maven“这个父工程包含哪些子模块”。过程识别子模块打包时Maven会通过 标签找到所有子模块的路径默认是父工程目录下的子文件夹按依赖顺序构建Maven 会先分析子模块间的依赖关系比如 hami_console 依赖 hami_core然后按 “先构建被依赖模块再构建依赖模块” 的顺序自动对每个子模块执行相同的命令比如你执行 install子模块也会自动执行 install。对于聚合项目的打包顺序Maven 聚合项目中打包的核心逻辑是被依赖的模块必须先打包install生成的 JAR 包会被安装到本地 Maven 仓库默认路径C:\Users\你的用户名\.m2\repository。依赖其他模块的模块后打包打包时会从本地仓库中获取被依赖模块的 JAR 包并将其嵌入到自己的 WAR 包中。如我先打包了依赖其他模块的项目会报错说找不到jar包或者被依赖项目里的包。检测是否成功打包依赖其他模块的项目将生成的 ham-console.war 解压用压缩软件打开查看 WEB-INF/lib 目录应该能看到 ham-core-1.0-SNAPSHOT.jar及其他依赖的 JAR 包说明依赖已正确嵌入。Maven 聚合项目中的公共模块 JAR 包不能直接放到 Tomcat 的webapps目录下正确做法将公共模块 JAR 包通过 mvn install 命令安装到本地 Maven 仓库。原因Maven 在打包console.war时会根据这个声明去本地仓库里寻找core-1.0-SNAPSHOT.jar。找到后Maven 会自动把core.jar文件打包进console.war的WEB-INF/lib目录下。最终部署到 Tomcat 的console.war包其实已经内置了它所需要的core.jar。Tomcat 启动时会加载这个WEB-INF/lib目录下的所有 JAR 包。Tomcat 的webapps目录是用来存放 ** 完整的 Web 应用WAR 包** 的。它不会去解析一个孤零零的 JAR 包也不知道这个 JAR 包应该被哪个 Web 应用使用。即使你把core.jar放到webapps目录console.war在启动时也找不到它因为它期望的core.jar是在自己的WEB-INF/lib里面。hami项目部署到本地后 如果要在idea上使用这个tomcat 把配置文件里新加的注释了 不然会出错 原因复杂 不易深究打包时出错先看控制台那个目录出错如果控制台的报错不够详细和具体可以在target目录下的surefire-reports 目录下找对应的.txt文件看详细的日志里面会显示具体出错原因出错代码位置等。启动Tomcat时出错去Tomcat安装目录下的logs目录下找启动出错的年月日对应的日志打开后找到启动出错的时分秒对应的日志。最新的日志会在最后。部署项目后删除Tomcat里的项目需要删除webapps里的包和解析出来的文件夹如果使用ssm聚合项目的部署方式修改了 conf目录删除时需要复原在删除conf下对应的catalina

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询