是否可以在不检查外部依赖项的情况下构建 USQL 项目?

Is it possible to build USQL project without checking external dependencies?

当我尝试在 Visual Studio 中构建我的 USQL 项目时,出现此错误:

Error E_STORE_USER_FILENOTFOUND: File not found or access denied: wasb://xxxx@yyyy.blob.core.windows.net/file.txt. Description: Unable to obtain information about this file. Resolution: Ensure the file with exact casing exists (paths are case-sensitive) and the account has read permission to the file.

显然,我无权访问该文件,但这没关系,因为脚本应该在服务帐户下执行,而不是我的个人帐户。

如果我在我的本地 ADLA 中未安装的脚本中引用了程序集,也会发生同样的情况。

我正在使用 Visual Studio 2015 Professional Update 3 和 Azure Data Lake Tools for VS 2.3.0.1。

是否可以在不检查此外部引用的情况下构建 USQL 项目?我只是想确保脚本语法没问题。

我只是想让你知道我正在调查此事!目前,@wBob 的解决方法是您最好的选择。例如,您可以创建一个测试 blob 存储帐户,添加文件的示例版本,然后将您的完整路径指向那些。

不幸的是,@Peter Bons 解决方法似乎并不总是有效。我刚刚测试了一个带有语法错误和不存在的文件引用的脚本,我只得到了找不到文件的错误(在本地测试)。

我目前正在查看是否存在忽略外部依赖项的语法检查,我会尽快回复您!

谢谢,
马特巴西尔 Azure 数据湖 PM

要回答这个问题:如果不访问输入文件,就无法build/compile U-SQL 脚本。编译脚本时会访问和检查文件元数据,包括大小和 ACL,因为准备工作正在生成依赖于数据大小等的作业图。

我建议在 http://aka.ms/adlfeedback 提交功能请求以请求工具中的语法验证选项。请注意,VS 编辑器中的智能感知会在不访问文件的情况下为您提供语法是否正确的一些指示(尽管如果您在那里引用对象,它仍然需要访问您的元数据服务)。