java - Spring Boot 从我的模型和存储库类创建一个库

标签 java spring spring-boot

我找不到这个问题的答案,所以如果有,我很抱歉重复这个问题。

我有 4 个 springboot 应用程序(MICRO SERVICES ??),我们在 Apex 上运行的 Oracle 数据库上有我们的主要 CRM。现在,随着时间的推移,我一直试图打破它。因此,我创建了一些 spring-boot 应用程序,例如,我有一个用于谷歌服务的应用程序,例如:地理编码、地点搜索等。我有一个用于将我们的 CRM 连接到 Xero 在线会计服务 API 和第三个运行 web-套接字服务器,以便我们可以将消息推送给 Oracle Apex 的用户。

现在,在我连接到同一个数据库的所有项目中,我有 4 个模型和存储库类副本。

我想做的是创建一个包含它们的 jar,然后在项目之间共享它。现在我可以创建一个库,但是因为我需要在库中有 spring deps。

我将其创建为我的 gradle.build

buildscript {
    ext {
        springBootVersion = '1.5.10.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.example'
version = '0.0.1'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    compile('org.springframework.boot:spring-boot-actuator-docs')
    compile('org.springframework.boot:spring-boot-starter-actuator')
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-data-rest')
    compile('org.springframework.data:spring-data-rest-hal-browser')
    runtime('org.springframework.boot:spring-boot-devtools')
    compileOnly('org.springframework.boot:spring-boot-configuration-processor')
    compileOnly('org.projectlombok:lombok')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

但是如果我没有带有 @SpringbootApplication 注释的应用程序类,我会得到一个错误。

我确定我遗漏了一些东西,但我需要使用 spring JPARepositories 创建一个 jar 库。

最佳答案

考虑到您只想将该库用于您的实体和存储库,您实际上并不需要 Spring 引导,并且可以仅使用 Spring 创建一个库。

只需添加您需要的依赖项,在您的情况下可能只是 spring-data-jpa(或者,spring-boot-starter-data-jpa):

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-jpa</artifactId>
</dependency>

如果你想使用 Spring boot 开箱即用的依赖管理,你仍然可以使用它:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.5.7.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

现在您可以使用普通的 Maven JAR 插件而不是 Spring boot 插件来构建它。

关于java - Spring Boot 从我的模型和存储库类创建一个库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49063727/

相关文章:

java - Spring数据Elasticsearch |通过存储库进行全文本搜索

java - 无法评估 Jackson 反序列化

java - 如何在刷新之前获取 Hibernate Managed Entity 的数据库快照

java - 如何在执行 catch block 之前检查 try block 中的 2 个条件 - Selenium WebDriver Java

java - 我们可以根据内容更改 log4j 日志记录级别吗

java - Spring Security Hierarchy 角色系统

java - Spring 框架无法解析 IntelliJ 中的引用

java - JBoss AS 7.1.1 Final 和 Log4j

java - 从 spring Controller 发布到不同的 URL

java - Hibernate @OneToMany 连接表抛出 StackOverflowException