java - 无法使用 Visual Studio 2015 编辑 Xamarin .axml 布局文件
问题描述
由于工作中的版本许可限制,我必须使用 Visual Studio 2015开发 Xamarin Android 应用程序。我必须说,在我的个人计算机上使用 Visual Studio 2019(学生版)一切正常,但我无法在工作中使用该许可证进行开发。
在我的工作计算机上,我已经安装并更新了 Xamarin for Visual Studio 2015 扩展,并使用 Java Runtime Environment v1.8.0_241 和 Java Development Kit v1.8.0_231,正如我在很多指南中所读到的,这里是我的配置:
我已经创建并清空了 Xamarin Android 项目,没有比空项目包含更多的文件,并且我这边没有修改任何代码。但是在尝试打开 .axml 文件时出现此错误。
“与布局渲染器的连接失败。这可能是由 Java 配置错误引起的。”
这里是完整的错误报告:
java.lang.NoClassDefFoundError: com/android/utils/ILogger
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: com.android.utils.ILogger
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 7 more
Error: A JNI error has occurred, please check your installation and try again
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=350m; support was removed in 8.0
Picked up _JAVA_OPTIONS: -XX:MaxPermSize=256m
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
Exception in thread "main"
关于“忽略选项 MaxPermSize = 256m”的最后一行是由于我按照指南创建的环境变量,但现在我已经用完了选项:/
我在质疑是否可以使用 Visual Studio 2015 使用 Xamarin 进行开发,或者我必须要求我的老板升级许可证。
我感谢任何支持。谢谢。
解决方案
到目前为止我遇到的唯一解决方案:
我正在使用 Android Studio 编辑 .xml 文件(UI 设计),然后将代码复制到 Visual Studio 2015 中的 .axml,现在它可以工作了。我的应用很简单,只有Button、TextView和EditText,对我来说就够用了。
如果您有一个更具可扩展性的解决方案,请避免使用外部工具(Android Studio),我的投票是您的。
推荐阅读
- ionic-framework - Ionic android ion-icon 不显示
- reactjs - 如何使图表条颜色不同?
- azure-active-directory - PfSense 随机失去与 Azure AD 域服务的连接
- perl - 如何使用 PerlMagick 在图像上“羽化”边缘
- webpack - Webpack 已使用与 API 架构不匹配的配置对象进行初始化
- javascript - 如何在不影响其父元素的情况下动态缩放 HTML 元素?
- c# - 在先前更改后更改控件的文本之前等待
- angular - 重置响应式表单字段
- php - Paytm 重定向到回调而不是 Symfony 中的支付网关
- php - Laravel Jetstream - 如何在注册时加入默认团队