• Java构建


    大部分Java项目都是相似的,使用Gradle插件,能够抽象出这些步骤,这样就不必为每个Java项目都编写Gradle的project和task了

    引入java插件

    apply plugin: 'java'

    引入java插件后,该插件会为脚本添加内置的任务,可以执行 gradle -q tasks 进行查看,列出任务列表

    外部依赖

    repositories {
        mavenCentral()
    }
    
    dependencies {
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }

    依赖配置

    依赖范围

      compile:编译期间依赖

      runtime:运行和测试的时候依赖,但是编译时期不需要。如 JDBC 驱动

      testCompile:测试编译期间依赖

      testRuntime:测试运行期间起来

    使用Maven中央仓库进行依赖

    repositories {
        mavenCentral()
    }
    
    dependencies {
        testCompile group: 'junit', name: 'junit', version: '4.11'
    }

    简写依赖

    testCompile 'junit:junit:4.12'

    使用Maven的远程仓库

    repositories { 
        maven {
            url "http://repo.mycompany.com/maven2" 
        }
    }    
    使用Maven本地仓库
    repositories {
        //使用Maven本地仓库
        mavenLocal()
        //使用Maven中央仓库
        mavenCentral()
    }
     
     
    采用 Ivy 远程仓库 
    repositories { 
        ivy {
            url "http://repo.mycompany.com/repo" 
        }
    }    
    采用本地 Ivy 目录 
    repositories { 
        ivy {
            // URL can refer to a local directory
            url "../local-repo" 
        }
    }

    一个项目可以采用多个库,Gradle会按照顺序从各个库中查询依赖文件

    引入本地jar

     compile files('libs/sigar.jar')

    发布

    uploadArchives {
        repositories {
            mavenDeployer {
                repository(url: "file:/Users/sherry/WorkPath/maven/repository/")
            }
        }
    }

    相当于是Maven中的  mvn install

    一个稍微完整的配置

    group 'org.zln.learning'
    version '1.0-SNAPSHOT'
    
    apply plugin: 'java'
    apply plugin: 'maven'
    
    sourceCompatibility = 1.8
    
    [compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
    
    //仓库配置
    repositories {
        //使用Maven本地仓库
        mavenLocal()
        //使用Maven中央仓库
        mavenCentral()
    }
    
    //依赖配置
    dependencies {
        compile 'org.zln.bdrisk:bdrisk-commons:1.0-SNAPSHOT'
        testCompile 'junit:junit:4.12'
    }
    
    //发布配置
    uploadArchives {
        repositories {
            mavenDeployer {
                repository(url: "file:/Users/sherry/WorkPath/maven/repository/")
            }
        }
    }
    • 配置MANIFEST.MF
    设置jar的main类
    jar{
        manifest{
            attributes 'Main-Class':'com.manning.ToDoApp'
        }
    }
    • 改变默认结构
    sourceSets{
      main{
        java{
          //设置源代码路径
          srcDirs=['src']
        }
      }
    
      test{
        java{
          //设置测试源代码路径
          srcDirs=['src']
        }
      }
    }
    
    设置输出路径
    buildDir='out'
  • 相关阅读:
    Mybaits利用插件generator自动生成sql
    idea设置
    centos虚拟机的相关知识
    nginx部署
    apollo配置
    分布式报错解决方案
    搭建springconfigCenter遇到的坑
    idea中git配置
    SpringCloudDay1_概念
    03.2020 MB SD Connect C4 Software “set_SDconnect.bat” File Lost Error Solution
  • 原文地址:https://www.cnblogs.com/sherrykid/p/5926563.html
Copyright © 2020-2023  润新知