我正在使用Jersey和Glassfish編寫Web應用程序。我需要加載一個文件。在我的項目中,它位於src/main/resources/example.txt目錄中。一切工作在Tomcat中,但是當我在Glassfish中運行時,我得到了FileNotFoundException。它沒有找到一個文件,因爲當我嘗試在Glassfish中獲取路徑時,它顯示了一個Glassfish目錄:\ glassfish3122eclipsedefaultdomain \ config \ src \ main \ resources \ example.txt而不是項目目錄,當我得到我的文件時。我該如何改變它?或者有沒有辦法配置一個項目在編譯時將文件複製到需要的目錄?Glassfish - 讀取文件 - 正確的目錄
回答
我是玻璃魚的新手。但我認爲它應該工作。
final String instanceRoot = System.getProperty("com.sun.aas.instanceRoot");
if (instanceRoot == null)
{
throw new FileNotFoundException("Cannot find Glassfish instanceRoot. Is the com.sun.aas.instanceRoot system property set?");
}
File configurationFolder = new File(instanceRoot + File.separator + glassfishDomainConfigurationFolderName);
File configFile = new File(configurationFolder, fileName);
嗯,你寫的東西給了我一個Glassfish目錄,但是我想實現的目標是到達我正在構建的項目目錄中的文件(比如MyProjectsName/src/main/resource/example.txt),我不知道如何使用Glassfish – krajol
然後你應該使用 URL url = this.getClass()。getResource(「/ package/name/file.txt 「); File file = new File(url.getFile()); –
url變量在此返回爲null。如果你的意思是這樣的: URL url = this.getClass()。getClassLoader()。getResource(「。」); System.out.println(url.getPath()); 那麼我得到的路徑是這樣的: C:/ Users/me/workspace/glassfish3122eclipsedefaultdomain/lib/classes/ 和可悲的glassfish文件夾不是我想要的。 – krajol
- 1. 未正確讀取Android文本文件(在原始目錄中)
- 2. 閱讀正確的目錄
- 3. 讀取目錄文件
- 4. 目錄不讀書正確
- 5. 按文件讀取目錄文件
- 6. 正確讀取文本文件
- 7. C#讀取目錄中的文件
- 8. 讀取目錄中的文件Aurelia
- 9. 將讀取的文件放在目錄
- 10. 用php讀取xml文件的目錄
- 11. 正在讀取目錄中的文件C++
- 12. 使用GlassFish/Vaadin讀取外部文件?
- 13. 正在讀取文件,正確加載但格式不正確
- 14. 無法正確讀取文件?
- 15. JS FileReader沒有正確讀取文件
- 16. Javascript FileReader讀取文件不正確
- 17. 文件沒有正確讀取
- 18. C++從文件中讀取不正確
- 19. 陣列沒有正確讀取文件
- 20. FileReader沒有正確讀取文件
- 21. Hive讀取文件不正確
- 22. 文件需要讀取正確
- 23. 文件無法正確讀取
- 24. 如何正確讀取圖像文件?
- 25. Java文件未被正確讀取
- 26. 如何正確讀取async/await文件?
- 27. 如何正確讀取文件到EOF
- 28. Python 3正確讀取.csv文件
- 29. C - 打開並讀取目錄,然後確定文件類型
- 30. 從TFRecord文件中沒有正確讀取記錄?
您是否將這兩個服務器部署爲war文件? – MaVRoSCy
在pom.xml文件中,我將它配置爲 war –
krajol