- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试实例化 LocalstackContainer 时遇到以下异常。我确实有这个类,并且能够在我的本地找到源代码。我无法找到根本原因。我正在使用带有 Java 11 的 Windows 操作系统。
import org.testcontainers.containers.localstack.LocalStackContainer;
import org.testcontainers.junit.jupiter.Testcontainers;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
@TestContainers
public class S3Test {
private S3Client s3Client() {
LocalStackContainer localstack= new LocalStackContainer().withServices(LocalStackContainer.Service.S3);
return S3Client
.builder()
.endpointOverride(localstack.getEndpointOverride(LocalStackContainer.Service.S3))
.credentialsProvider(StaticCredentialsProvider.create(AwsBasicCredentials.create(
localstack.getAccessKey(), localstack.getSecretKey())))
.region(Region.of(localstack.getRegion()))
.build();
}
@Test
public void test() {
}
}
java.lang.NoClassDefFoundError: com/amazonaws/auth/AWSCredentials
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:686)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeBeforeEachMethods$2(TestMethodTestDescriptor.java:169)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:51)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:248)
at org.junit.platform.launcher.core.DefaultLauncher.lambda$execute$5(DefaultLauncher.java:211)
at org.junit.platform.launcher.core.DefaultLauncher.withInterceptedStreams(DefaultLauncher.java:226)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:199)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:141)
at org.eclipse.jdt.internal.junit5.runner.JUnit5TestReference.run(JUnit5TestReference.java:98)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:542)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:770)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:464)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:210)
Caused by: java.lang.ClassNotFoundException: com.amazonaws.auth.AWSCredentials
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 71 more
最佳答案
尽管 Testcontainers LocalStack 支持 AWS SDK 版本 2,但它仍然在幕后使用 AWS SDK 版本 1,但是 omits the necessary runtime dependency .因此,您需要明确包含依赖项:
Maven
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
<version>1.11.914</version>
<scope>test</scope>
</dependency>
Gradle
testImplementation "com.amazonaws:aws-java-sdk-s3:1.11.914"
关于java - JUnit AWSCredentials NoClassDefFoundError with LocalStackContainer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64017812/
我在尝试实例化 LocalstackContainer 时遇到以下异常。我确实有这个类,并且能够在我的本地找到源代码。我无法找到根本原因。我正在使用带有 Java 11 的 Windows 操作系统。
我是 Android Studio 和 intelliJ 的新手。 我正在尝试使用 AmazonSNS - 推送。我无法弄清楚如何将 AwsCredentials.properties 文件添加到模块
AmazonS3Client已被弃用,取而代之的是 AmazonS3ClientBuilder 。 AmazonS3Client 构造函数接受 AWSCredentials 实例,客户端可以通过该实例
我们正在为 Android 手机开发一款基本游戏,最近已从 Eclipse IDE 切换到 Android Studios。通过切换,我被迫从 aws-java-sdk-1.9.30 迁移到 aws-
我正在处理无人值守的 PowerShell 脚本,并希望以正确的方式存储 AWS 凭证。 根据 the documentation ,我应该能够将凭据存储在这样的 .ini 文件中 .\myAWSCr
static const char* AWS_ACCESS_KEY_ID = "XXXXXXXXXXXXX"; static const char* AWS_SECRET_ACCESS_KEY = "
我有/aws 文件夹,其中包含 aws jar 和我的主程序 Aws.class aws 也是一个包: spectjrt.jar aspectjwe
使用此代码设置类路径 AWSCredentialsProvider credentialsProvider = new ClasspathPropertiesFileCredentialsProvid
我正在运行适用于 AWS 的 Glacier API,这只是一个非常基本的版本 - 试图列出我的保管库。 我按照 http://docs.aws.amazon.com/amazonglacier/la
我在学习C++通过阅读 Stroustrup 的书,我正在练习一些与工作相关的代码。 我需要编写一些小代码来调用 Amazon Simple Systems Manager (如果我要这样做,pyth
在 Android 应用程序中,我从 http://.auth..amazoncognito.com/login 收到 JWT access_token一旦用户完成对 Cognito 用户池的身份验证
所以我尝试将我的应用程序连接到亚马逊云 Nosql 服务器 DynamoDB,我一直在遵循他们的教程,但由于不断发生此错误,似乎无法使其工作: java.lang.RuntimeException:
我正在创建自定义凭证提供程序,以便我可以设置访问 key 、 key 、 token 和过期时间。但是我在上传文件时收到以下错误 [__NSCFString expiration]: unrecogn
所以我尝试使用管道创建一些 aws 配置文件以打开 powershell 并运行命令。当我直接通过 PS 使用命令时它工作得很好但是当尝试使用管道时它只是说命令不存在: 术语“Set-AWSCrede
我是一名优秀的程序员,十分优秀!