2 回答

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊
這是maven之類的路徑命名,所以我猜測src/main/resources被視為資源目錄,所以你可以假設(shè)這被認(rèn)為是一個(gè)類路徑資源,所以只需使用OrderHandler.class.getClassLoader().getResourceAsStream("配置/env_local.yml"); 問題是它是一個(gè) InputStream,所以你需要一個(gè)不同的 ApiConfiguration 構(gòu)造函數(shù)。但是您仍然無法獲得路徑,而只能加載您的資源。并嘗試這樣做,因?yàn)楫?dāng)您將此配置打包在 JAR/WAR 中時(shí),將無法使用路徑訪問它。

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超6個(gè)贊
由于資源將打包在您的 cg-core 模塊中,并且當(dāng)您的應(yīng)用程序運(yùn)行時(shí),您提供的路徑將不存在。
加載文件和獲取絕對路徑的正確方法是。
String configurationLocation = "configuration/env_local.yml";
final String absoluteFile = new File(ApiConfiguration.class.getClassLoader().getResource(configurationFileLocation).getFile()).getAbsolutePath();
添加回答
舉報(bào)