从Gradle创建可执行jar文件并在Maven中导入jar

时间:2019-05-20 04:41:49

标签: spring-boot gradle jar

你好,我创建了一个带有gradle配置的spring boot项目,其中包含常用功能,例如身份验证,社交登录,并且我想创建可执行jar文件并作为gradle项目的依赖项,以便可以将其导入到另一个spring gradle或maven项目中。为了访问包含的依赖关系的REST端点

(项目A:想成为自由图书馆)

build.gradle

plugins {
    id 'org.springframework.boot' version '2.1.5.RELEASE'
    id 'java'
}
apply plugin: 'io.spring.dependency-management'

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
repositories {
    mavenCentral()
}

springBoot.mainClassName = "com.example.auth"
bootJar.enabled = true

jar {
    manifest {
        attributes 'Main-Class': 'com.example.auth'
    }
}
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

项目还包含端点

package com.example.auth;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api/test/")
public class TestController {

    @GetMapping("testCalled")
    public String testCalled(){
        return "test called..";
    }
}

并使用gradle build命令创建了一个jar文件,并使用

作为依赖项将其安装到另一个项目中
mvn install:install-file "-Dfile=F:\auth\build\libs\auth-0.0.1-SNAPSHOT.jar" -DgroupId=com.auth -DartifactId=test-authentication -Dversion=1.0 -Dpackaging=jar

并且还成功安装了依赖项

项目B:Spring boot maven项目

我要使用休息终点

  

/ api / test / testCalled

来自Maven项目(项目B)

有什么想法请帮忙!

谢谢。

1 个答案:

答案 0 :(得分:0)

您应包括以下gradle部分以实现此目的:

jar {
    manifest {
        attributes 'Main-Class': 'com.aaa.bbb.SpringBootApplication'
    }
}