2016-01-13 53 views
0

我有一個Maven項目,正在使用Eclipse IDE。 我試圖通過eclipse導出.war文件將它部署到具有tomcat服務器的其他linux機器,並將其放到另一臺機器上。將java獨立程序部署到Tomcat服務器時的目錄配置

這是問題所在,當我執行(?)的Tomcat服務器.war文件,它會自動解壓縮這個文件,添加一個項目目錄,但是我在/src/main/resources資源遍及var/lib/tomcat7/webapps/{project-root}/WEB-INF/classes和我原來的代碼加載一些文件沒有按't work work

這裏是例子。

String currentDir = System.getProperty("user.dir"); 
File mappingdir = new File(currentDir + "/src/main/resources/mapping"); 
File f = new File(mappingdir + "/a.csv"); 

結果

HTTP Status 500 - java.io.FileNotFoundException: 
/var/lib/tomcat7/src/main/resources/mapping/a.csv (No such file or directory) 

因爲,這.csv文件不存在了。 它的位置是/var/lib/tomcat7/webapps/{project-root}/WEB-INF/classes/mapping/a.csv

我應該如何改變目錄,同時開發Java獨立代碼 - 如果我考慮將其部署到Web服務器?


我的問題與這個問題有很大關係。 Read file from /src/main/resources/

+0

請參閱http://stackoverflow.com/questions/19916845/cant-access-to-files-in-resources-directory-with-maven-with-eclipse-ide和http://stackoverflow.com/questions/ 10171122 /資源從-SRC-主資源未找到,後建設與 - 行家 –

回答

0

在java應用程序中,所有源文件放置在/ WEB-INF/classes文件夾中。從您使用的資源中讀取文件

BufferedReader reader = new BufferedReader(
       new InputStreamReader(getClass().getClassLoader().getResourceAsStream("mapping/a.csv"))); 

它也可以與獨立的Java應用程序一起工作。

相關問題