Как решить проблему локали с помощью `jack.import.type.policy`?

Я строю приложение, которое должно использовать библиотеки Java 8. Чтобы включить совместимость с исходным кодом, я добавил следующее в build.gradle приложения:

compileSdkVersion 23
buildToolsVersion "25.0.0"
defaultConfig {
    applicationId "SOME_APP"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    // enable Jack
    jackOptions {
        enabled true
    }
}
//...
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

При создании решения я получаю следующие ошибки:

Error:com.android.sched.util.config.PropertyIdException: Property 'jack.import.type.policy' (in -D option): The value must be {keep-fırst,faıl} (case insensitive) but is 'keep-first'
Error:com.android.sched.util.codec.ParsingException: The value must be {keep-fırst,faıl} (case insensitive) but is 'keep-first'

Как видите, эта ошибка вызвана турецким İ i I ı символы. Кто-то еще получил эту ошибку, и это билет на проблему. Эта проблема помечена для решения в будущем выпуске, но из-за важности проекта я не могу дождаться этого будущего выпуска.

В заявочном листе есть предлагаемое решение:

Хитрое решение, которое я сделал: создал настройки запуска для всех задач, связанных с jack, в gradle (почти 9) и обновил часть VM Options с помощью -Duser.language=en.

Я пытался применить это, редактируя параметры VM

введите описание изображения здесь

и добавление -Duser.language=en в файл studio.exe.vmoptions.

К сожалению, это не решает проблему, я получаю одни и те же ошибки всякий раз, когда я пытаюсь построить проект.

  • Правильна ли моя текущая конфигурация?
  • Есть ли другой способ решить эту проблему?

2 ответа

Нашел рабочее решение. Такое поведение вызвано языком настроек не-юникодных программ в Windows. У меня был турецкий как язык не-Unicode программ. После замены на английский вопрос решен.

[EDIT] Следующее решение действительно для Android Studio, работающей в Windows

Чтобы изменить, перейдите в Панель управления -> Регион и язык. Нажмите на административную вкладку. Нажмите на Изменить системный язык и выберите английский. Нажмите "Применить" и перезапустите, если необходимо.

Спасибо @raidensan

Сменить язык компьютера, решить проблему. (С помощью Windows8)

  • Denetim Masası -> Dil -> Dil ekle -> ingilizce
  • Панель управления \ Все элементы панели управления \ Язык

введите описание изображения здесь

Другие вопросы по тегам