- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我通过 CodenameOne 的 IKVM 版本运行了一个第 3 方 Android 库,并成功导入了输出 .dll 作为对我在 Visual Studio 中的 UWP 应用程序的引用。在尝试编译项目时,我得到一个构建错误:
(从错误列表窗口)
Cannot find type System.ApplicationException in module CommonLanguageRuntimeLibrary
(从输出窗口)
Program Files (x86)\MSBuild\Microsoft\WindowsXaml\v14.0\8.2\Microsoft.Windows.UI.Xaml.Common.targets(352,5): Xaml Internal Error error WMC9999: Cannot find type System.ApplicationException in module CommonLanguageRuntimeLibrary.
根据我的阅读,System.ApplicationException
在 .Net 中针对 UWP 已贬值,您应该只使用 System.Exception
我不知道如何解决和/或更正这个问题,因为它来自库而不是我自己的代码。
提前致谢。
最佳答案
我们的 IKVM 端口不是完全交 key 的。 IKVM 是使用 .Net 2.0 编译的,并且使用需要包含在使用它的 UWP 项目中的接口(interface)分解出一些东西(例如反射东西、一些日期东西、线程等)。
如果您还没有实现这些接口(interface),或者您正在使用我们不需要的 CN1 代码路径,那么您可能正在着手使用 .Net 2.0 类的 JDK 或 IKVM 运行时部分(例如这个异常).
目前只有两个接口(interface)需要在你的UWP项目中实现:
可以看到,在CN1端口他们是如何初始化的here
以下是 RuntimeReflectionHelper 的实现和 NativeThreadHelper
在 UWP 项目中实现这些解决了 IKVM 是为 .Net 2.0 编译的事实,因此这些实现可以直接使用 UWP API。
即使这样,您也可能会遇到问题。 IKVM 的这个端口与 CN1 端口一起发展,它实际上只针对我们的用例进行了测试。如果我们不需要 CN1,一些常用方法可能不会实现。
您应该注意的一些其他限制:
如果您希望项目中的 IKVM 编译代码能够相互引用,则它们必须是单个 .dll 文件的一部分。例如。如果将两个库 lib1.jar 和 lib2.jar 编译为 lib1.dll 和 lib2.dll,则 lib1 中的代码不能引用 lib2 中的类,反之亦然。在 CN1 中,我在通过 IKVM 运行它之前将所有 .class 文件捆绑到一个 .jar 中,因此这对我们来说不是问题(因此我没有花太多时间尝试修复它)。
如果您的目标是发布到 Windows 商店,目前他们的 DotNetNative 工具链中存在一个错误,导致它在包含 try/catch block 的同步方法上阻塞。 Microsoft 可能会在未来的版本中修复此问题,但我通过在所有类上运行预转换以将所有此类方法转换为其 native 工具链可接受的形式来解决此问题。 Here应用此预处理的 ANT 任务的一部分。 Here是用于执行实际预处理的 ANT 任务的类预处理器项目。
正如我之前所说,如果您在已经开辟的道路之外探索,预计会遇到困难。
关于c# - 在模块 CommonLanguageRuntimeLibrary 中找不到类型 System.ApplicationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39683977/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!