【发布时间】:2022-08-16 23:44:40
【问题描述】:
我正在运行一个带有 Blob 存储连接功能的 AnyLogic 云模型,用于将数据发送到 Azure Blob 存储。
尝试调用 \'BlobServiceClientBuilder\' 方法时,我在运行时遇到错误:
import com.azure.storage.blob.*;
import com.azure.storage.blob.models.*;
import java.io.*;
BlobServiceClient serviceClient = new BlobServiceClientBuilder()
.connectionString(<storageConnectionString>)
.buildClient();
// I\'ve also tried:
BlobServiceClient serviceClient = new BlobServiceClientBuilder()
.endpoint(<endpointString>)
.connectionString(<storageConnectionString>)
.buildClient();
使用有效的storageConnectionString 和endpointString 作为存储帐户。
我在运行时遇到的错误如下:
java.lang.NoClassDefFoundError: com/azure/core/client/traits/TokenCredentialTrait
鉴于我没有尝试使用 SAS 令牌或凭据,并且选择了连接字符串方法(根据 Azure BlobServiceClientBuilder() documentation),我不确定是什么导致了错误。
可能相关的想法:
-
由于网络安全安排而阻止访问:
托管 AnyLogic Cloud 环境的虚拟机位于与存储帐户所在的虚拟网络对等的虚拟网络上。存储帐户具有网络集成和专用终结点,因此可能是配置问题,尽管错误消息并未表明这一点。
-
AnyLogic 有时有点笨拙,可能会导致问题,尽管我不知道是什么导致了这个问题。
任何建议将不胜感激。 我在这里看到了一些类似但对我来说不是解决方案的帖子 - 希望这不会得到大量的“重复” cmets,但我们开始了!
标签: java azure azure-blob-storage anylogic azure-java-sdk