1. 程式人生 > >Spring Cloud Finchley.RC2版本使用分散式配置中心去git倉庫讀取不到配置檔案解決方案

Spring Cloud Finchley.RC2版本使用分散式配置中心去git倉庫讀取不到配置檔案解決方案

Finchley.RC2版本下java.lang.StringIndexOutOfBoundsException: String index out of range: -1報錯應該是這個版本的一個BUG。 在此版本有個HttpClientConfigurableHttpConnectionFactory這個類(1.4.3沒有),lookupHttpClientBuilder方法中,第69行報錯, 分析了一下,在substring的時候,獲取File.separator的值為反斜槓"\",這可能是個BUG? 那麼之所以走到這裡是因為第67行獲取到的HttpClientBuilder物件為null,反推這個HttpClientBuilder是哪來的時,發現是在前面通過MultipleJGitEnvironmentProperties傳入的, 好吧,再去找MultipleJGitEnvironmentProperties這個傻缺從哪來的,發現是在EnvironmentRepositoryConfiguration.DefaultRepositoryConfiguration內自動注入了一個Bean(205行),有傳入MultipleJGitEnvironmentProperties物件; 除錯發現,裡面的uri為null,所以在將HttpClientBuilder物件放入httpClientsByUri中的時候(HttpClientConfigurableHttpConnectionFactory(line:59))沒有put進去; 我在除錯MultipleJGitEnvironmentProperties註冊成Bean的時候,uri是的的確確有被賦值,到此我就不知所以了,就要多請教大家了。