簡體   English   中英

如何使用`jack.import.type.policy`解決語言環境問題?

[英]How to resolve locale issue with `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 ı字符引起的。 有人收到此錯誤,這是問題單 此問題已標記為在將來的發行版中已解決,但是由於項目的重要性,我迫不及待要等待這個將來的發行版。

在問題單中有一個建議的解決方案:

我做了一個棘手的解決方案:在gradle中為所有與傑克相關的任務創建了運行配置(將近9個),並使用-Duser.language = en更新了VM Options部分。

我試圖通過編輯VM選項來應用

在此處輸入圖片說明

並將-Duser.language=en添加到studio.exe.vmoptions文件。

不幸的是,這不能解決問題,每次嘗試構建項目時都會遇到相同的錯誤。

  • 我當前的配置正確嗎?
  • 還有另一種解決方法嗎?

找到了可行的解決方案。 此行為是由Windows中的非Unicode程序設置的語言引起的。 我使用土耳其語作為非unicode程序的語言。 更改為英語后,問題解決。

[編輯]以下解決方案對Windows上運行的Android Studio有效

要進行更改,請導航至控制面板->區域和語言。 單擊管理選項卡。 單擊更改系統區域設置,然后選擇英語。 單擊應用,並在必要時重新啟動。

在此處輸入圖片說明

謝謝@raidensan

更改計算機語言,解決了問題。 (使用Windows8)

  • DenetimMasası->蒔蘿->蒔蘿腳踝-> ingilizce
  • 控制面板\\所有控制面板項目\\語言

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM