我使用 NetBeans 7.2.1编写了一个java Servlet Web 应用程序。该程序有一些我附加到项目中的 jar 文件库。该应用程序使用NetBeans和Apache Tomcat 7.0.27 运行良好。
我的问题是我在项目中使用的一些jar文件库,需要访问一些文件夹和文件。我将这些文件夹和文件放在与整个 NetBeans 项目相同的目录中。但我得到了这个例外:
Exception: java.lang.RuntimeException: java.io.FileNotFoundException
所以我用这些代码来找出我应该把它们放在哪里:
out.println("current directory: " + new File(".").getAbsolutePath());
out.println("current directory: " + System.getProperty("user.dir"));
out.println("current directory: " + getServletContext().getRealPath(("/")));
所以我发现当前的工作目录是:
C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.27\bin
我的问题是如何为每个 Web 应用程序设置不同的目录地址?我有许多 Web 应用程序,其中一些使用相同的资源文件名。我不能将它们全部放在一个目录中。
请注意,我无权访问 jar 文件的源代码来更改。我只需要一种方法来设置 jar 文件使用的绝对路径。
当我将WAR文件放在 unix 服务器上时,我遇到了同样的问题。提取的 WAR 文件位于服务器上的以下位置:
/data02/tools/Apache/Tomcat/apache-tomcat-6.0.37/webapps/BANNEROnline
但我想我应该把资源文件夹和文件放在这个路径中(moosavi3 是我的用户名!):
/home/moosavi3
如何更改路径?