无法在Apache Tomcat中运行AngularJS应用的问题求助
嘿,我来帮你排查这个AngularJS项目在Tomcat上运行出错的问题!
首先梳理下你的场景:你在Eclipse里创建了Dynamic Web Project并转为AngularJS项目,Tomcat 9.0配置正常能访问,但运行应用时出现了AngularJS模块加载错误。从你提供的内容来看:
你的项目目录结构
WebContent根目录下包含index.html、controller.js,同时有META-INF和WEB-INF文件夹。
报错情况
错误提示为AngularJS的[$injector:modulerr]模块加载失败,这是典型的模块定义或依赖配置错误导致的。
核心问题与修复
看你的代码,问题出在controller.js的模块定义上:
// 原错误代码 var app = angular.module("myApp", [" "]);
这里你在依赖数组里写了一个带空格的字符串" ",AngularJS会尝试去加载这个不存在的模块,直接引发加载失败。
修正后的controller.js:
// 如果没有依赖模块,直接传空数组即可 var app = angular.module("myApp", []);
额外检查项
除了核心的模块依赖问题,你还可以确认这两点:
- 确认
controller.js的引用路径正确:从目录结构看,index.html和controller.js都在WebContent根目录,所以<script src="controller.js"></script>的路径是没问题的;如果后续调整文件位置,要同步修改这个路径。 - 验证Tomcat部署是否完整:去Tomcat安装目录下的
webapps/你的项目名文件夹,检查index.html和controller.js是否都被正确部署过来,避免因部署不全导致文件找不到。
测试建议
修改完代码后,重新把项目部署到Tomcat,启动服务器后访问localhost:8080/你的项目名称/index.html,应该就能正常加载AngularJS应用了。另外你页面里用了ng-view,如果后续要做路由功能,记得引入AngularJS的路由模块angular-route.js并在依赖里添加ngRoute,当前简单示例可以暂时保留或移除这个标签。
内容的提问来源于stack exchange,提问作者Heena
相关产品推荐
相关产品推荐

