Dan*_*_97 27 java android xamarin.android xamarin android-multidex
所以我有我的Xamarin.Android项目,其中包含几个库.当我尝试构建时,我收到一个错误,其中"java.exe"退出代码2.
经过几个小时的谷歌研究后,我发现我可以启用Multidex.根据Jon Doublas的博客文章,我做了上面提到的步骤. http://www.jon-douglas.com/2016/09/05/xamarin-android-multidex/
根据博客文章Android API Level> 21处理Multidex本身.我的经验是,它没有.我在API级别25上构建并使用相同的信息一次又一次地获得相同的错误.文章中的步骤没有帮助.看起来像Xamarin.Android不支持Multidex.
看来你必须自己处理Multidex,但我还没有找到任何有效的解决方案.有没有人找到一个有效的解决方案?
我正在使用Xamarin 4.6和Visual Studio 2017.
Dan*_*_97 37
在我的项目中搜索大约20个小时后找到答案..所以这里是解决问题"java.exe"退出代码2的步骤
1)更改链接中描述的MainDexClasses.bat:
http://www.jon-douglas.com/2016/09/05/xamarin-android-multidex/
2)确保您已在Android应用程序中启用Multi-Dex选项 - !!! 如果MultiDex设置为true,请查看.csprj文件(在我的情况下,即使我启用Multi-Dex也不行)
3)在AndroidManifest文件中添加以下部分
<application android:name="android.support.multidex.MultiDexApplication"></application>
Run Code Online (Sandbox Code Playgroud)
这将告诉你的android-project实际使用给定的MultiDex-Option.
在干净和构建之后,我能够按原样运行我的应用程序.
Mic*_*cer 29
找到这个问题后,@ Daniel_97s回答我只能通过在项目中添加multidex而不更改MainDexClasses.bat来解决此错误:
添加MultiDexApplication到Android Manifest:
<application android:name="android.support.multidex.MultiDexApplication"></application>
Run Code Online (Sandbox Code Playgroud)注意我在Visual Studio for Mac和Windows上获得此错误代码2,同一个应用程序正在成功构建.(为什么?)
Hei*_*tad 16
我的解决方案是禁用"使用以下密钥库详细信息签署.APK文件".由于密钥库位置和/或密码不正确,因此退出java.exe并使用代码2.
My .csproj file had an entry for the KeyStore that was no longer valid, even thought right-clicking the project and inspecting the properties indicated that I had pointed it to the new location.
Within .csproj look for all instances of <AndroidSigningKeyStore> and update accordingly.
我在这个问题上挣扎了很长时间。我在签名时发现了错误的来源 - 当我从公司 TFS 克隆项目 repo 时,Android csproj 文件有 KeyStore 设置和位置的条目。我没有密钥库,驱动器上的位置无效。然后,Visual Studio 在部署时无法对应用程序进行签名,而不是某种 FileNotFoundException,它给了我只用代码 2 退出的 java。所以......
tl; dr:转到android项目属性,选择包签名取消选中“签署apk文件...”(将csproj更改<AndroidKeyStore>true</AndroidKeyStore>为false),瞧,您现在可以运行您的解决方案。
| 归档时间: |
|
| 查看次数: |
20953 次 |
| 最近记录: |