2016-07-01 2 views
2

Я получаю следующую ошибку, когда создаю приложение Xamarin.Android в Release.«Java.exe» вышел с кодом 1 (проблема с Proguard)

"Java.exe" exited with code 1 

Вот выход ...

...  
1> java.io.IOException: Can't read [C:\Users\FranciscoJavier\AppData\Local\Android\android-sdk\platforms\android-24\android.jar] (Can't process class [java/nio/charset/CharsetDecoder.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7))) 
1> at proguard.InputReader.readInput(InputReader.java:230) 
1> at proguard.InputReader.readInput(InputReader.java:200) 
1> at proguard.InputReader.readInput(InputReader.java:178) 
1> at proguard.InputReader.execute(InputReader.java:100) 
1> at proguard.ProGuard.readInput(ProGuard.java:196) 
1> at proguard.ProGuard.execute(ProGuard.java:78) 
1> at proguard.ProGuard.main(ProGuard.java:492) 
1> Caused by: java.io.IOException: Can't process class [java/nio/charset/CharsetDecoder.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7)) 
1> at proguard.io.ClassReader.read(ClassReader.java:112) 
1> at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87) 
1> at proguard.io.JarReader.read(JarReader.java:65) 
1> at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65) 
1> at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53) 
1> at proguard.InputReader.readInput(InputReader.java:226) 
1> ... 6 more 
1> Caused by: java.lang.UnsupportedOperationException: Unsupported class version number [52.0] (maximum 51.0, Java 1.7) 
1> at proguard.classfile.util.ClassUtil.checkVersionNumbers(ClassUtil.java:140) 
1> at proguard.classfile.io.LibraryClassReader.visitLibraryClass(LibraryClassReader.java:89) 
1> at proguard.classfile.LibraryClass.accept(LibraryClass.java:301) 
1> at proguard.io.ClassReader.read(ClassReader.java:86) 
1> ... 11 more 
1> Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8 
1>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(2118,3): error MSB6006: "java.exe" exited with code 1. 
1>Done executing task "Proguard" -- FAILED. 
1>Done building target "_CompileToDalvikWithDx" in project "Elfo.VisionShop.Droid.csproj" -- FAILED. 
1> 
1>Build FAILED. 

Чтение вывода сообщений, кажется, есть проблема с ProGuard, кто-то знает, что я могу сделать?

+1

Проблема заключается в том, что вы компилируете для Java 8, который не поддерживается: 'Unsupported class version number [52.0] (максимум 51.0, Java 1.7)'. –

+0

Хорошо, но ... как я могу изменить это, чтобы скомпилировать с Java 1.7? –

+0

http://stackoverflow.com/q/11364761/3788176 –

ответ

4

Вы можете увидеть проблему здесь:

Caused by: java.io.IOException: Can't process class [java/nio/charset/CharsetDecoder.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7)) 

Решение: Изменить вашу цель Java 7 (1.7).

+0

да, но как я могу это изменить? :) –

+0

install jdk 1.7 изменить его из файла -> Структура проекта – giannisf

+0

Giannisf, я вас не понял ... Файл -> Проект откуда? VisualStudio? Пожалуйста, дайте мне более подробную информацию. Большое спасибо заранее :-) –

6

Просто обновите ProGuard с официального сайта http://proguard.sourceforge.net/ (заменить папку в $ SDK_DIR/инструменты/Proguard /)

+1

, это не сработало для меня :-( –

+1

работал для меня :) – Shaegorath

2
**Error : while running app “Java.exe” exited with code** 

Я решил это вручную перекрывая размер Java кучи: В Visual Studio:

  1. правой кнопкой мыши на Project
  2. нажмите на Android свойства
  3. Нажмите на Параметры Android
  4. Выберите вкладка затем Advanced андроид настройки сборки
  5. Set Java Max Размер кучи до 1G (или больше, если это необходимо)

Проект в настоящее время строит ,

Надеюсь, это поможет. :)

+0

это сработало для меня. Если вы видите код ошибки, такой как '-1073740791', это должно быть решением. '-1073740791' на самом деле' 0xC0000409', что фактически является переполнением буфера стека, которое является ... именем сайта. :-) – Felix

Смежные вопросы