- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在我的项目中使用 Proguard,但是当我尝试构建时收到 java.exe 错误。
"java.exe" exited with code 1.
我尝试增加堆大小并创建一个 proguard.cfg file as outlined here,没有成功。
我可以在关闭 Proguard 时构建项目,所以我确信这是问题所在。
有什么帮助吗?
编辑:添加看起来相关的输出。我看到一个异常和许多警告,但我不确定如何开始解决这些问题。
5>Using "Proguard" task from assembly "C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Build.Tasks.dll".
5>Task "Proguard" (TaskId:297)
5> Task Parameter:ProguardJarPath=C:\Users\owner\AppData\Local\Android\android-sdk\tools\proguard\lib\proguard.jar (TaskId:297)
5> Task Parameter:JavaToolPath=C:\Program Files (x86)\Java\jdk1.7.0_71\\bin (TaskId:297)
5> Task Parameter:JavaPlatformJarPath=C:\Users\owner\AppData\Local\Android\android-sdk\platforms\android-23\android.jar (TaskId:297)
5> Task Parameter:MonoPlatformJarPath=C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\mono.android.jar (TaskId:297)
5> Task Parameter:ClassesOutputDirectory=obj\Release\android\bin\classes (TaskId:297)
5> Task Parameter:ProguardCommonXamarinConfiguration=obj\Release\proguard\proguard_xamarin.cfg (TaskId:297)
5> Task Parameter:ProguardGeneratedReferenceConfiguration=obj\Release\proguard\proguard_project_references.cfg (TaskId:297)
5> Task Parameter:ProguardGeneratedApplicationConfiguration=obj\Release\proguard\proguard_project_primary.cfg (TaskId:297)
5> Task Parameter:ProguardConfigurationFiles=
5> {sdk.dir}tools\proguard\proguard-android.txt;
5> {intermediate.common.xamarin};
5> {intermediate.references};
5> {intermediate.application};
5> proguard.cfg;
5> (TaskId:297)
5> Task Parameter:
5> LibraryProjectJars=
5> obj\Release\__library_projects__\AndroidTranscoder\library_project_imports\AndroidTranscode.jar
5> obj\Release\__library_projects__\FormsViewGroup\library_project_imports\formsviewgroup.jar
5> obj\Release\__library_projects__\OkHttp\library_project_imports\okhttp-2.3.0-jar-with-dependencies.jar (TaskId:297)
5> Task Parameter:
5> AdditionalJavaLibraryReferences=
5> C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\classes.jar
5> C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\libs\internal_impl-21.0.3.jar (TaskId:297)
5> Task Parameter:ProguardJarInput=obj\Release\proguard\__proguard_input__.jar (TaskId:297)
5> Task Parameter:ProguardJarOutput=obj\Release\proguard\__proguard_output__.jar (TaskId:297)
5> Task Parameter:DumpOutput=obj\Release\proguard\dump.txt (TaskId:297)
5> Task Parameter:PrintSeedsOutput=obj\Release\proguard\seeds.txt (TaskId:297)
5> Task Parameter:PrintUsageOutput=obj\Release\proguard\usage.txt (TaskId:297)
5> Task Parameter:PrintMappingOutput=obj\Release\proguard\mapping.txt (TaskId:297)
5> Proguard (TaskId:297)
5> JavaPlatformJarPath: C:\Users\owner\AppData\Local\Android\android-sdk\platforms\android-23\android.jar (TaskId:297)
5> MonoPlatformJarPath: C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\mono.android.jar (TaskId:297)
5> ClassesOutputDirectory: obj\Release\android\bin\classes (TaskId:297)
5> ProguardGeneratedApplicationConfiguration: obj\Release\proguard\proguard_project_primary.cfg (TaskId:297)
5> ProguardJarInput: obj\Release\proguard\__proguard_input__.jar (TaskId:297)
5> ProguardJarOutput: obj\Release\proguard\__proguard_output__.jar (TaskId:297)
5> ProguardConfigurationFiles: (TaskId:297)
5>
5> {sdk.dir}tools\proguard\proguard-android.txt;
5> {intermediate.common.xamarin};
5> {intermediate.references};
5> {intermediate.application};
5> proguard.cfg;
5> (TaskId:297)
5> JavaSourceFiles: (TaskId:297)
5> JavaLibraries: (TaskId:297)
5> ExternalJavaLibraries: (TaskId:297)
5> DoNotPackageJavaLibraries: (TaskId:297)
5> LibraryProjectJars: (TaskId:297)
5> obj\Release\__library_projects__\AndroidTranscoder\library_project_imports\AndroidTranscode.jar (TaskId:297)
5> obj\Release\__library_projects__\FormsViewGroup\library_project_imports\formsviewgroup.jar (TaskId:297)
5> obj\Release\__library_projects__\OkHttp\library_project_imports\okhttp-2.3.0-jar-with-dependencies.jar (TaskId:297)
5> UseProguard: False (TaskId:297)
5> EnableLogging: False (TaskId:297)
5> DumpOutput: obj\Release\proguard\dump.txt (TaskId:297)
5> PrintSeedsOutput: obj\Release\proguard\seeds.txt (TaskId:297)
5> PrintMappingOutput: obj\Release\proguard\mapping.txt (TaskId:297)
5> Environment Variables passed to tool: (TaskId:297)
5> java_tool_options= -Dfile.encoding=UTF8 (TaskId:297)
5> proguard_home=C:\Users\owner\AppData\Local\Android\android-sdk\tools\proguard (TaskId:297)
5> C:\Program Files (x86)\Java\jdk1.7.0_71\\bin\java.exe -jar C:\Users\owner\AppData\Local\Android\android-sdk\tools\proguard\lib\proguard.jar -include C:\Users\owner\AppData\Local\Android\android-sdk\tools\proguard\proguard-android.txt -include obj\Release\proguard\proguard_xamarin.cfg -include obj\Release\proguard\proguard_project_references.cfg -include obj\Release\proguard\proguard_project_primary.cfg -include proguard.cfg "-injars 'obj\Release\proguard\__proguard_input__.jar';'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\mono.android.jar';'obj\Release\__library_projects__\AndroidTranscoder\library_project_imports\AndroidTranscode.jar';'obj\Release\__library_projects__\FormsViewGroup\library_project_imports\formsviewgroup.jar';'obj\Release\__library_projects__\OkHttp\library_project_imports\okhttp-2.3.0-jar-with-dependencies.jar';'C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\classes.jar';'C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\libs\internal_impl-21.0.3.jar'" "-libraryjars 'C:\Users\owner\AppData\Local\Android\android-sdk\platforms\android-23\android.jar'" -outjars "obj\Release\proguard\__proguard_output__.jar" (TaskId:297)
5> ProGuard, version 4.7 (TaskId:297)
5> Reading input... (TaskId:297)
5> Reading program jar [C:\Workspace\Mobile\Blert\Source\Blert\Blert.Droid\obj\Release\proguard\__proguard_input__.jar] (TaskId:297)
5> Reading program jar [C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\mono.android.jar] (TaskId:297)
5> Reading program jar [C:\Workspace\Mobile\Blert\Source\Blert\Blert.Droid\obj\Release\__library_projects__\AndroidTranscoder\library_project_imports\AndroidTranscode.jar] (TaskId:297)
5> Reading program jar [C:\Workspace\Mobile\Blert\Source\Blert\Blert.Droid\obj\Release\__library_projects__\FormsViewGroup\library_project_imports\formsviewgroup.jar] (TaskId:297)
5> Reading program jar [C:\Workspace\Mobile\Blert\Source\Blert\Blert.Droid\obj\Release\__library_projects__\OkHttp\library_project_imports\okhttp-2.3.0-jar-with-dependencies.jar] (TaskId:297)
5> Reading program jar [C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\classes.jar] (TaskId:297)
5> Reading program jar [C:\Users\owner\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\libs\internal_impl-21.0.3.jar] (TaskId:297)
5> Reading library jar [C:\Users\owner\AppData\Local\Android\android-sdk\platforms\android-23\android.jar] (TaskId:297)
5> Initializing... (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'android.support.v4.view.ViewPager$OnPageChangeListener' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'mono.android.support.v4.view.ViewPager_OnPageChangeListenerImplementor' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'android.support.v4.view.ViewPager$PageTransformer' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'android.support.v4.widget.DrawerLayout$DrawerListener' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'mono.android.support.v4.widget.DrawerLayout_DrawerListenerImplementor' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'android.support.v4.widget.DrawerLayoutImpl' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener' (TaskId:297)
5> Note: the configuration doesn't specify which class members to keep for class 'mono.android.support.v4.widget.SwipeRefreshLayout_OnRefreshListenerImplementor' (TaskId:297)
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.H264Utils
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.io.model.SeqParameterSet
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.io.model.SeqParameterSet
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.H264Utils
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.io.model.SeqParameterSet
5>PROGUARD : warning : net.ypresto.androidtranscoder.engine.MediaFormatValidator: can't find referenced class org.jcodec.codecs.h264.io.model.SeqParameterSet
5>PROGUARD : warning : okio.DeflaterSink: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Files
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Files
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Files
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Path
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.OpenOption
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Path
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.OpenOption
5>PROGUARD : warning : okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Path
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.OpenOption
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.Path
5>PROGUARD : warning : okio.Okio: can't find referenced class java.nio.file.OpenOption
5>PROGUARD : warning : okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
5> Note: android.support.v4.text.ICUCompatIcs: can't find dynamically referenced class libcore.icu.ICU (TaskId:297)
5> Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class com.android.org.conscrypt.OpenSSLSocketImpl (TaskId:297)
5> Note: com.squareup.okhttp.internal.Platform: can't find dynamically referenced class org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl (TaskId:297)
5> Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'icon' dynamically (TaskId:297)
5> Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { int icon; }' (TaskId:297)
5> Maybe this is program field 'blert.droid.R$drawable { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.R$attr { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.R$id { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.app.LauncherActivity$ListItem { android.graphics.drawable.Drawable icon; }' (TaskId:297)
5> Maybe this is library field 'android.app.Notification { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.app.Notification$Action { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.appwidget.AppWidgetProviderInfo { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.content.pm.PackageItemInfo { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.content.pm.ResolveInfo { int icon; }' (TaskId:297)
5> Maybe this is library field 'android.inputmethodservice.Keyboard$Key { android.graphics.drawable.Drawable icon; }' (TaskId:297)
5> Maybe this is library field 'android.speech.tts.TextToSpeech$EngineInfo { int icon; }' (TaskId:297)
5> Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'title' dynamically (TaskId:297)
5> Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { java.lang.CharSequence title; }' (TaskId:297)
5> Maybe this is program field 'blert.droid.R$id { int title; }' (TaskId:297)
5> Maybe this is library field 'android.R$attr { int title; }' (TaskId:297)
5> Maybe this is library field 'android.R$id { int title; }' (TaskId:297)
5> Maybe this is library field 'android.app.Notification$Action { java.lang.CharSequence title; }' (TaskId:297)
5> Maybe this is library field 'android.preference.PreferenceActivity$Header { java.lang.CharSequence title; }' (TaskId:297)
5> Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'actionIntent' dynamically (TaskId:297)
5> Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { android.app.PendingIntent actionIntent; }' (TaskId:297)
5> Maybe this is library field 'android.app.Notification$Action { android.app.PendingIntent actionIntent; }' (TaskId:297)
5> Note: the configuration refers to the unknown class 'com.google.vending.licensing.ILicensingService' (TaskId:297)
5> Note: the configuration refers to the unknown class 'com.android.vending.licensing.ILicensingService' (TaskId:297)
5> Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void setOnAdapterChangeListener(android.support.v4.view.ViewPager$OnAdapterChangeListener); }', but not the descriptor class 'android.support.v4.view.ViewPager$OnAdapterChangeListener' (TaskId:297)
5> Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void calculatePageOffsets(android.support.v4.view.ViewPager$ItemInfo,int,android.support.v4.view.ViewPager$ItemInfo); }', but not the descriptor class 'android.support.v4.view.ViewPager$ItemInfo' (TaskId:297)
5> Note: the configuration keeps the entry point 'android.support.v4.view.ViewPager { void calculatePageOffsets(android.support.v4.view.ViewPager$ItemInfo,int,android.support.v4.view.ViewPager$ItemInfo); }', but not the descriptor class 'android.support.v4.view.ViewPager$ItemInfo' (TaskId:297)
5> You should check if you need to specify additional program jars. (TaskId:297)
5>PROGUARD : warning : there were 20 unresolved references to classes or interfaces.
5> You may need to specify additional library jars (using '-libraryjars'). (TaskId:297)
5> Note: there were 2 references to unknown classes. (TaskId:297)
5> You should check your configuration for typos. (TaskId:297)
5> Note: there were 3 unkept descriptor classes in kept class members. (TaskId:297)
5> You should consider explicitly keeping the mentioned classes (TaskId:297)
5> (using '-keep'). (TaskId:297)
5> Note: there were 3 unresolved dynamic references to classes or interfaces. (TaskId:297)
5> Note: there were 3 accesses to class members by means of introspection. (TaskId:297)
5> You should consider explicitly keeping the mentioned class members (TaskId:297)
5> (using '-keep' or '-keepclassmembers'). (TaskId:297)
5> java.io.IOException: Please correct the above warnings first. (TaskId:297)
5> at proguard.Initializer.execute(Initializer.java:321) (TaskId:297)
5> at proguard.ProGuard.initialize(ProGuard.java:211) (TaskId:297)
5> at proguard.ProGuard.execute(ProGuard.java:86) (TaskId:297)
5> at proguard.ProGuard.main(ProGuard.java:492) (TaskId:297)
5> Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8 (TaskId:297)
5>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1815,3): error MSB6006: "java.exe" exited with code 1.
5>Done executing task "Proguard" -- FAILED. (TaskId:297)
5>Done building target "_CompileToDalvik" in project "Blert.Droid.csproj" -- FAILED.: (TargetId:241)
最佳答案
可以在这个线程中找到答案。
Xamarin.Android Proguard - Unsupported class version number 52.0
您还需要将以下文件从旧的混淆器复制到新文件夹中。
关于android - 为什么我的 Xamarin.Android 项目无法在启用 Proguard 的情况下生成 : "java.exe" exited with code 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36990561/
https://www.guardsquare.com/en/proguard/manual/optimizations说 class/unboxing/enum Simplifies enum ty
我想使用 ProGuard 重命名变量和函数。我希望生成的类文件在所有方面都与源 jar 相同,除了名称。有没有办法做到这一点? 我尝试使用 dontoptimize 和 dontshrink 无效。
例如,这条规则在 proguard 中意味着什么: -keep class myjava.** {*;} 我理解 {*;} 部分意味着类中的所有成员和方法。但是包名中的 2 个星号是什么意思? 提前致
我有一个即将使用 ProGuard 混淆的库。 “图书馆模式”几乎适用于我的用例,即保留所有公共(public)和 protected 类和类成员几乎没问题。 然而,由于 Java 的可见性要求,一些
在我的 Playstore 中,我注意到去混淆后的代码包含相当多的 在堆栈跟踪中。 (例如 at .onAttach(ProfileLandingFragment.java) )。 有什么用真正意思?
我收到了一封来自 Google 的关于 unsafe implementation of TrustManager 的电子邮件唯一的线索是有问题的代码在 com.b.a.af 类中。显然,这是混淆的名
我读自 http://proguard.sourceforge.net/manual/usage.html关于assumenosideeffects的使用。我的问题涉及以下段落: -assumenos
什么是智能 ProGuard 配置来混淆特定类 com.acme.Algorithm 的私有(private)方法和常量? 我想对此进行混淆,因为它包含一个算法,当意外打开 .jar 时,该算法不应该
最近将 Pushwoosh 库集成到我的 Android 应用程序中。它运作良好。但是在导出为签名应用程序时遇到以下错误。请帮忙。提前致谢。 Proguard returned with error
有没有人有使用ProGuard的经验是否已经有超出类加载时间的应用程序性能测量? 我有一个相当复杂的应用程序,可能需要改进,但为 ProGuard 准备它需要几天时间,所以我想先听听一些意见。 最佳答
当我尝试使用 android studio 3.2 canary 17 构建应用程序包时,我收到以下错误消息。我不知道我所有的 proguard 文件中缺少什么角括号,一切似乎都很好,并且在旧版本的
我遇到了 proguard 的问题,我刚刚配置了 Bugsense 并且使用了它们的配置建议,我在 google 和 stackoverflow 上进行了搜索,通常 ppl 可以在控制台中看到该行或问
我第一次尝试使用 Proguard,我收到此错误,有人可以帮我吗?谢谢 [2014-09-03 11:44:58 - P - Photos] Proguard returned with error
当我收到此错误时,我正在尝试导出启用了 proguard 的 android 应用程序:- Proguard returned with error code 1. See console pro
看起来有两个用于运行 ProGuard 的 SBT 插件。任何人都可以谈谈他们的相对优势和劣势吗?我还没有在网上找到比较。 xsbt-proguard-plugin - https://github.
Proguard 会条纹 kotlin.Unit 独立对象(在 Kotlin 运行时库中),如果您使用此类型,则会导致编译错误。以下规则无助于保留此元素(可能是因为 Unit 不是一个类,它是一个对象
构建 Android 发行版 apk 时,Smack 4.1 的正确 ProGuard 规则是什么? 目前,我正在使用 aSmack github 存储库上 README.asmack 文件中的 aS
尝试使用 Proguard Maven 插件时出现 OutOfMemoryErrors。我尝试通过将 MAVEN_OPTS 环境变量设置为 -Xmx2g 来为 Maven 分配更多内存,但这没有任何区
我有一个 pom.xml 文件如下。当我运行 mvn clean install 时,出现错误 [proguard] Error: Can't read [C:\Program Files\Java\
我已经将支持库从 v22.2.1 更新到 v23.0.0,在构建应用程序后(使用 minifyEnabled true)我有“AppCompat 不支持当前主题功能”异常: 08-23 05:46:1
我是一名优秀的程序员,十分优秀!