2016-12-01 160 views
0
@Configuration 
public class MessageSourceConfig { 

    @Bean 
    public static MessageSource messageSource() { 
     ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource(); 
     messageSource.setBasename("file: c:/temp/messages"); 

     return messageSource; 
    } 
} 

我想讓spring-boot使用我的外部messages.properties,messages_en_Us.properties文件。不幸的是我得到這個錯誤:spring-boot:帶有外部messages.properties文件的ResourceBundle

ResourceBundle [file: c:/temp/messages] not found for MessageSource: Can't find bundle for base name file: c:/temp/messages, locale en_US 

文件在那裏,我已經研究了這樣的情況下,它是說,這應該在春季啓動工作,但事實並非如此。我也嘗試過ReloadableResourceBundleMessageSource,並以相同的方式失敗。我在這裏做錯了什麼?

回答

1

試一下:

messageSource.setBasename("file://c:/temp/messages"); 

編輯:

在評論一些測試後,這是相當做的這種方式,其作品爲OP:

messageSource.setBasename("file:C:/temp/messages"); 
+0

遺憾的是它不'仍然工作,但給出了這個錯誤:'15:27:23.865 WARN [main] ReloadableResourceBundleMessageSource - 無法解析屬性文件[messages.properties] java.net.UnknownHostException:c' –

+1

我認爲你不是很遠:)它看起來像'c:'不被識別。 和'file:// C:/ temp/messages'你有同樣的錯誤? – davidxxx

+0

有'C:'這是這個錯誤:'無法解析屬性文件[messages.properties] java.net.UnknownHostException:C' –

相關問題