ビルドのGradleへspringboot-000マルチモジュールプロジェクト

 springbootを学んだが、同社は、このエリアには需要がないので、それは開発に使用されていない前に、順番に次のやろうとして最近の再を利用して、ほんの少しの時間は、ノートを取った、という印象を強化。

これは最初の章のspringbootビルドGradleのマルチモジュールプロジェクトです。

Gradleでは、私たちはアプリケーションの構築を支援するために、ビルドツールです。コンパイルの建設、包装、他のプロセスを含みます。Gradleではでは、各プロジェクトは、あなたが私たちが対応するプラグインを導入する必要があるのGradle正しい実装作業をしたい場合は、タスクのシリーズを実行する必要があるプロジェクトをビルドし、プロジェクトにコンパイルされます。(など理解しやすいが、ハード他、場合を説明するのに、XMLでこのようなタスクさまざまな条件があります)のGradleと、よりシンプルで柔軟な構成、相対Mavenのxml構成と比較してのMaven、Gradleの柔軟なグルーヴィーな簡単なスクリプト言語大幅にコードの行数の構築を簡素化し、かつグルーヴィーはJavaベースと拡大したJavaで、Javaプログラマがシームレスにグルーヴィーな開発プログラムを切り替えることができ、スクリプトを書くように簡単となるJavaのグルーヴィーを書くことで、あなたは完成し実行することができ、 Groovyは内部Javaバイトコードにコンパイルし、次に実行する仮想マシン(JVM)を開始します。

次のステップは、Gradleのマルチモジュールプロジェクトを構築アイデアを開いて、ファイルを選択し、プロジェクトを作成するためのアイデアを使用しています

 

プロジェクトのgroupIdは、プロジェクト名の成果物を作成するディレクトリを選択し、[次へ]をクリック、なぜ次の、[完了]をクリックします。

次のようにプロジェクトディレクトリの成功の後

 

 

 そして、それはあなたができる、[完了]をクリックし、他のモジュールをビルドするプロジェクト名、右の新しいモデルは、以下のページを変更するには基本的に不要をクリックし、[次へ]をクリックし、成果物を入力し、[次へ]をクリックすることです

次のように最後に、ディレクトリ構造は次のとおりです。

 

コンフィギュレーション情報をgradle.properties:

org.gradle.jvmargs = -Xmx2g -XX:MaxMetaspaceSize = 512メートル-XX:+ HeapDumpOnOutOfMemoryErrorの-Dfile.encoding = UTF-8

 build.gradleの設定情報を次のように

// 指定要应用的插件和版本
plugins {
    id 'java'
    id "org.springframework.boot" version "2.1.2.RELEASE"
    id "io.spring.dependency-management" version "1.0.6.RELEASE"
}

// 指定下载的仓库地址
allprojects {
    repositories {
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
        jcenter()
        mavenCentral()
    }
}

group 'com.pf.springboot'

// 指定依赖版本
ext.spring_cloud_version = "Greenwich.RELEASE"
ext['lombok.version'] = "1.18.4"

// 应用于所有依赖的子项目
subprojects {
    version '1.0-SNAPSHOT'
    // 应用插件
    apply plugin: "java"
    apply plugin: "org.springframework.boot"
    apply plugin: "io.spring.dependency-management"

    // 设置编译和运行的jre兼容版本
    sourceCompatibility = '1.8'
    targetCompatibility = '1.8'

    // 字符编码处理
    def defaultEncoding = 'UTF-8'
    tasks.withType(AbstractCompile).each { it.options.encoding = defaultEncoding }

    // 生成Java文档的任务
    javadoc {
        options.encoding = defaultEncoding
        options.addBooleanOption('Xdoclint:none', true)
    }

    // Java编译任务依赖处理资源的任务
    compileJava.dependsOn(processResources)

    // 指定要运行测试的包
    test {
        include "**/repository/**", "**/service/**", "**/controller/**"
    }

    // spring boot构建任务
    springBoot {
        buildInfo()
    }

    dependencyManagement {
        // 导入maven依赖管理的bom
        imports {
            mavenBom "org.springframework.cloud:spring-cloud-dependencies:${spring_cloud_version}"
            mavenBom org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES
        }
    }

    /*
    * 为所有模块指定公共的依赖
    * 注意这里有些默认不用再指定版本了,已经由上面的dependencyManagement管理了
    * */
    dependencies {
        annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
        annotationProcessor "org.projectlombok:lombok"
        compileOnly "org.springframework.boot:spring-boot-configuration-processor"
        compileOnly "org.projectlombok:lombok"
        implementation "org.apache.commons:commons-lang3"
        implementation "org.apache.commons:commons-collections4:4.3"
        implementation "org.springframework.boot:spring-boot-starter-web"
//        implementation "org.springframework.boot:spring-boot-starter-jdbc"
        implementation fileTree(dir: 'libs', includes: ['*.jar'])
        testAnnotationProcessor "org.projectlombok:lombok"
        testCompileOnly "org.projectlombok:lombok"
        testImplementation "org.springframework.boot:spring-boot-starter-test"
    }
}

至此基本架构已搭建完成

おすすめ

転載: www.cnblogs.com/ly-gaoshuaige/p/12045823.html