我正在Netbeans中开发一个JSP项目。我使用了一些JSP文件和一些java文件。项目结构如下:
root
-Web Pages
--Jsp files
-Source Packages
--myPacakge
---Java files
--myIndex (it's a folder)
我的问题是我想从放置在myPackage中的java文件中引用myIndex。**
我首先假设java文件将“源包”视为根目录。因此,我以为索引的路径将只是**“myIndex”,但通过调试器我发现它正在查看C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.14\bin\myIndex'**
然后我尝试了以下路径:"\myIndex”,但它现在查看的是***“C:\myIndex”***
你能帮我一下吗,myIndex的正确路径应该是什么,或者我是否应该把它放在项目中的某个地方?
1条答案
按热度按时间xt0899hw1#
您所显示的是源项目的结构。当您运行一个已部署的webapp时,不再有源项目。所有内容都捆绑在一个war文件中,其中包含JSP文件、其他web资源、
WEB-INF/classes
下的类文件以及WEB-INF/lib
下的jar文件。如果您想访问一个文件,而该文件在生成的war文件中位于WEB-INF/classes
内,那么您应该使用类加载器访问它,使用如果您打算在
myIndex
目录中存储一些内容,那么就不要再考虑了:war文件是只读的。在文件系统上配置一些绝对目录,在webapp之外,并使用这个绝对位置来存储新文件。不要使用相对位置,因为它取决于服务器的物理位置,它是如何启动的,它的JVM的当前目录是什么,等等。如果服务器被移动,一切都会中断。