Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS Beanstalk:无法确定嵌入式数据库驱动程序类_Amazon Web Services_Spring Boot_Amazon Elastic Beanstalk_Amazon Dynamodb - Fatal编程技术网

Amazon web services AWS Beanstalk:无法确定嵌入式数据库驱动程序类

Amazon web services AWS Beanstalk:无法确定嵌入式数据库驱动程序类,amazon-web-services,spring-boot,amazon-elastic-beanstalk,amazon-dynamodb,Amazon Web Services,Spring Boot,Amazon Elastic Beanstalk,Amazon Dynamodb,我有一个spring引导应用程序,它在我的本地实例上运行良好(通过Intellij),但在AWS BEanstalk上部署时,该应用程序抛出以下错误(很抱歉格式化。spring就是这样生成异常的): org.springframework.beans.factory.BeanCreationException:创建名为“org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfig”的bean时出错 持续时间$JdbcTempla

我有一个spring引导应用程序,它在我的本地实例上运行良好(通过Intellij),但在AWS BEanstalk上部署时,该应用程序抛出以下错误(很抱歉格式化。spring就是这样生成异常的):

org.springframework.beans.factory.BeanCreationException:创建名为“org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfig”的bean时出错
持续时间$JdbcTemplateConfiguration':自动连线依赖项的注入失败;嵌套的异常是org.springframework.beans.factory.BeanCreationExcept
ion:无法自动连线字段:private javax.sql.DataSource org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$JdbcTemplateConfigur
数据源;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建cla中定义的名为“dataSource”的bean时出错
ss路径资源[org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration$NonEmbeddedConfiguration.class]:通过factor进行Bean实例化
y法失败;嵌套异常为org.springframework.beans.BeanInstantiationException:未能实例化[javax.sql.DataSource]:工厂方法
“dataSource”引发异常;嵌套的异常是org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException:Cann
ot为数据库类型NONE确定嵌入式数据库驱动程序类。如果您想要一个嵌入式数据库,请在类路径上放置一个受支持的数据库。如果你
要从特定配置文件加载数据库设置,您可能需要激活它(配置文件“aws”当前处于活动状态)。

pom.xml

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-rest</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-dynamodb</artifactId>
        <version>1.10.56</version>
    </dependency>

</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>

        <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.my.app.path.MyApplication</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</build>
应用程序aws.properties

spring.profiles.active=aws
dynamodb.tablename=my_dynamodb_table
spring.profiles.active=aws
该应用程序使用dynamodb中的表。这可能是因为我可能需要在AWS中设置允许beanstalk与dynamodb对话的权限吗?如果是这样,请让我知道怎么做


我的EC2实例是
tomcat8
类型。

找到了关于我的问题的解决方案。请参见@user672009的答案

只需将此添加到您的pom中

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <version>1.3.156</version>
</dependency>

com.h2数据库
氢
1.3.156