2017-01-20 6 views
0

Am получает сообщение об ошибке:Значения атрибута должно быть постоянной ошибка с помощью содержательной Space

Значение атрибута должно быть постоянным

при определении Космической аннотации для моего космического класса:

enter image description here

Я рассмотрел вопрос In Java why this error: 'attribute value must be constant'?, который является самым близким к моей проблеме, но он не " t помочь.

Am с использованием новейших Vault библиотеки:

compile 'com.contentful.vault:core:2.1.0' 

В предыдущей версии не требуется атрибут Locale. Как это решить?

+1

Было бы легче помочь вам, если бы вы условии, что ваш код как * текст *, а затем сообщение об ошибке в виде текста под ним. Это дало бы нам столько же информации, но тогда мне не пришлось бы снова вводить декларацию вручную в ответ ... –

+0

Мой плохой, я просто хотел показать его как есть –

ответ

7

Если вы посмотрите на Javadoc for Space вы увидите, что атрибут locales является String[] - так просто предоставить идентификаторы из местных жителей:

@Space(value = "id", 
     dbVersion = 1, 
     models = NewsVault.class, 
     locales = { "en" }) 
+0

Вздох ... Это сделало это –

2

Марио, Java экосистема разработчиков на содержательной, здесь. Проще всего было бы объявить Locale.ENGLISH так:

public static final String ENGLISH = "en-US";

Или что ваш локаль по умолчанию является. В качестве альтернативы вы можете просто использовать строку сверху, а не константу.

Привет, Марио

+0

Это также работает. Спасибо –