我正在使用 ubuntu 打包 tomcate7 。 我使用 .war 文件上传网站。 网络运行正常。
这不是我的网站,而是在那里:
:/var/lib/tomcat7/webapps/ROOT$ ls
index.html META-INF
我在
找到我的网站文件(在.war中)/var/cache/tomcat7/Catalina/localhost/_/org/apache/jsp/
/var/cache/tomcat7/Catalina/localhost/_/WEB-INF/classes/
我在系统范围的搜索中找不到任何我的.css或.js文件
比如find / -name '*.css' -ls
他们在哪里?!
有没有一种简单的方法可以给tomcat .class文件或删除.jsp .java文件 (例如,如果我不想提供真正的来源但仅提供.class) JSP预编译。在构建期间,一些工具(jspc)很难。 任何简单的步行通过?
答案 0 :(得分:0)
WAR文件很可能在某个地方"在服务器上,但tomcat可能已被配置为不会爆炸"部署时的WAR文件,只是直接从WAR中提供资源。这可能就是为什么您的网站"工作"但是你找不到实际的.css文件,文件系统上没有.css文件但仍然包含在WAR中。
对于#2,预编译JSP,由于某种原因,这仍然是一个"跳过燃烧的箍"这个过程只是半自动化的。
在部署之前预编译JSP需要将JSP文件转换为Java源文件,编译该文件,然后将生成的类映射为最终Web应用程序中的servlet,最后从中删除JSP文件网络应用。
有Tomcat Page讨论过程,但只提供部分解决方案(从自动化角度出发)。
当然,预编译不受欢迎的一个原因是预编译的JSP不能跨容器移植,也不一定是同一容器的版本。所以,这是一个值得注意的问题。