尝试在本地 运行 U-SQL 脚本时出错

Error when trying to run U-SQL script locally

我已经实现了一个使用自定义提取器的 U-SQL 脚本。自定义提取器在单独的 class 库(对于 U-SQL 应用程序)中实现,它从 U-SQL 脚本的代码隐藏文件中调用。当我尝试在本地 运行 作业时,出现此错误:

E_RUNTIME_USER_LOADENGINEASSEMBLY: .Net cannot load runtime assembly 'ScopeEngineManaged.dll'. Description: A procedure imported by 'ScopeEngineManaged.dll' could not be loaded. Resolution: Ensure the file exists and that all dependencies are available, including ScopeEngine.dll. This runtime assembly requires a 64-bit process and depends upon the VC14 CRT runtime being installed on the local machine.

当我尝试在本地注册提取器程序集时遇到类似的错误:

[Job Error] E_RUNTIME_USER_LOADENGINEASSEMBLY: .Net cannot load runtime assembly 'ScopeEngineManaged.dll'. Description: A procedure imported by 'ScopeEngineManaged.dll' could not be loaded. Resolution: Ensure the file exists and that all dependencies are available, including ScopeEngine.dll. This runtime assembly requires a 64-bit process and depends upon the VC14 CRT runtime being installed on the local machine. ========== Local execution failure ==========

如果您使用的是 Windows 7,Azure Data Lake Tools 的最新更新引入了对 Windows 10 运行时的依赖。考虑升级您的 OS(Windows 7 正在上位),或者从以下 link:

下载运行时

https://www.microsoft.com/en-us/download/details.aspx?id=48234

我相信错误消息中提供了这个 URL。为您的 OS 和机器下载并安装正确的版本。

按照此处对我有用的说明进行操作:

https://github.com/Azure/usql/issues/66