我的spring Boot2.0应用程序识别并运行schema.sql来初始化我的嵌入式h2数据库。但是当我添加spring-cloud-starter-config依赖项时,应用程序不再运行schema.sql。为了说明,使用spring initializr生成一个spring Boot2(V2.0.1)应用程序,该应用程序依赖于:
添加实体:
package com.example.demo;
import javax.persistence.*;
@Entity
public class Room {
@Id
@Column(name = "ROOM_ID")
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
@Column
private String name;
//...getters and setters
}
实体的存储库:
package com.example.demo;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface RoomRepository extends CrudRepository<Room, Long> {
}
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
schema.sql:
CREATE TABLE ROOM(
ROOM_ID BIGINT AUTO_INCREMENT PRIMARY KEY,
NAME VARCHAR(16) NOT NULL,
);
data.sql:
INSERT INTO ROOM (NAME) VALUES ('Piccadilly');
INSERT INTO ROOM (NAME) VALUES ('Cambridge');
INSERT INTO ROOM (NAME) VALUES ('Oxford');
INSERT INTO ROOM (NAME) VALUES ('Manchester');
用以下application.yml替换空application.properties:
spring:
jpa:
hibernate.ddl-auto: none
<!--
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
-->
我也遇到过类似问题,但在H2数据库模式创建测试执行期间。我刚刚尝试了Spring Cloud的较新版本-spring-boot-starter-parent:2.0.2.release
和finchley.rc2
,它在我的情况下起作用。
我花了几分钟来演示您的示例--可以在Spring Boot 2.0.1和Spring Cloud finchley.rc1中复制,但在2.0.2和finchley.rc2中运行良好。我没有找到github问题,但看起来它已经修复了。
对于 REST API 的测试部分。正在查看可以在Spring启动中使用的依赖项。我看到有JUnit依赖项和Spring启动器测试依赖项。 JUnit依赖项和Spring Boot启动器测试依赖项有什么区别?
我有一个基本的Spring Boot项目,在这个项目中,我试图用RabbitMQ实现简单的消息传递。当我将spring-boot-starter-amqp依赖项添加到我的文件并启动Spring Boot应用程序时,我会得到导致的异常: pom.xml 如果我从pom.xml中移除spring-boot-starter-amqp依赖项,项目将不会出错:
我正在开发微服务,需要通过尤里卡服务器与服务注册中心交互。但是在pom.xml中出现了以下错误。在maven外部库的project structure中,没有spring-cloud依赖项,我无法在main类中使用注释。错误是 Dependency org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:${proj
我们在Jetty上使用Spring Boot(2.7.x)。依赖扫描器告诉我们,依赖树中仍然有Tomcat依赖。 当查看spring boot starter jetty 2.7.1的POM时,我发现spring boot starter jetty依赖于tomcat embed el。tomcat嵌入el包含来自javax的类。el和组织。阿帕奇。el包,所以我认为这是Tomcat的表达式语言解
我在heroku的示例应用程序的基础上,根据他们的教程,启动了一个spring boot应用程序。 我正在运行postgres docker容器,应用程序可以正确连接到该容器。现在我想使用Hibernate(遵循本Baeldung指南,但当我添加Jpa依赖项时: 然后我得到以下错误时运行的应用程序: 我不理解这个错误,也找不到太多关于它的信息(或者我不理解)。有人建议我检查配置,尽管我不确定我会错
我使用的是eclipse 2018、gradle 5.2.1、buildship 3.0.1。 我的配置看起来像: 我尝试根据building-spring-boot-2-projects-with-gradle创建spring boot 2 是: 但是,在我保存构建之后。gradle,项目和外部依赖关系消失,Spring Bootjar也没有下载。 我错了什么? 如果我使用gradle by s