Java TomCat:使用类路径打开文件

Java TomCat:使用类路径打开文件,java,eclipse,tomcat,file-io,Java,Eclipse,Tomcat,File Io,我想在Tomcat上运行服务器应用程序时打开磁盘上的文件。当我打印我的类路径时,我得到 C:\JavaDev\tools\apache-tomcat-6.0.33\bin\bootstrap.jar; C:\Program Files\Java\jdk1.6.0_23\lib\tools.jar 这对我来说没什么意义,但我甚至对它的工作原理没有一个基本的了解。我的项目从哪里加载?他们不需要在类路径上吗 这是我当前正在处理的域的目录布局: src/main/java/com/company/pr

我想在Tomcat上运行服务器应用程序时打开磁盘上的文件。当我打印我的类路径时,我得到

C:\JavaDev\tools\apache-tomcat-6.0.33\bin\bootstrap.jar;
C:\Program Files\Java\jdk1.6.0_23\lib\tools.jar
这对我来说没什么意义,但我甚至对它的工作原理没有一个基本的了解。我的项目从哪里加载?他们不需要在类路径上吗

这是我当前正在处理的域的目录布局:

src/main/java/com/company/product/domain/b/beans/MyClass.java
src/main/resources/whatever/myfile.txt
我尝试使用以下变体打开该文件:

String filename = "../resources/whatver/myfile.txt";
URL url = MyClass.class.getResource(filename);
url==null
每次。在我尝试过的其他路径变体中:

whatver/myfile.txt
../whatver/myfile.txt
../../../../../../../resources/whatver/myfile.txt
我需要一个可以提交的解决方案(即不存储在Eclipse工作区中),因此并非所有团队成员都必须更新他们的设置

这是我正在使用的环境:

  • Tomcat 6.0
  • 面向Web开发人员的Eclipse Java EE IDE,版本:Helios Service Release 2
  • Maven 3.0.3(r1075438;2011-02-28 18:31:09+0100)

在Maven项目中,
资源中的文件通常打包在类路径的某个地方。试试这个:

InputStream in = this.getClass().getClassLoader().getResourceAsStream("whatever/myfile.txt");
这是一个由Maven打包为.war的web应用程序吗